Python os.fdopen () Método
métodos de arquivo / diretório Python OS
esboço
os.fdopen () é usado para criar um objeto de arquivo descritor de arquivo fd, e retorna o objeto de arquivo.
Unix, está disponível no Windows.
gramática
fdopen () método de sintaxe é a seguinte:
os.fdopen(fd, [, mode[, bufsize]]);
parâmetros
fd - descritores de arquivos abertos, em Unix, o descritor é um inteiro pequeno.
mode - opcional e buffersize parâmetros, e built-in função de abertura, como Python, parâmetro mode pode especificar o "r, w, a, r + , w +, A +, b ", etc., indica que o arquivo é somente leitura ou leitura e gravação pode e abrir arquivos em formato binário ou de texto se abre.<Stdio.h> Estes parâmetros são semelhantes à linguagem C ea função fopen especificado no parâmetro de modo.
bufsize - Opcional Especifica se a zona tampão objeto de arquivo retornado: buffersize = 0, indica que nenhuma zona tampão; bufsize = 1, indicando que o objeto de arquivo é linha tamponada; bufsize = positivo, indicando que o uso de um tampão soco tamanho especificado a unidade é byte, mas o tamanho não é exata; bufsize = negativo, que o uso de um tamanho de buffer padrão do sistema para dispositivos de caracteres são geralmente tty linha de tamponamento, e para outros arquivos geralmente são completamente armazenados.Se este parâmetro não for definido, as configurações de buffer padrão do sistema.
Valor de retorno
Por arquivo descritor de arquivo objeto retornado.
Exemplos
O exemplo a seguir demonstra o método fdopen () de uso:
#!/usr/bin/python # -*- coding: UTF-8 -*- import os, sys # 打开文件 fd = os.open( "foo.txt", os.O_RDWR|os.O_CREAT ) # 获取以上文件的对象 fo = os.fdopen(fd, "w+") # 获取当前文章 print "Current I/O pointer position :%d" % fo.tell() # 写入字符串 fo.write( "Python is a great language.\nYeah its great!!\n"); # 读取内容 os.lseek(fd, 0, 0) str = os.read(fd, 100) print "Read String is : ", str # 获取当前位置 print "Current I/O pointer position :%d" % fo.tell() # 关闭文件 os.close( fd ) print "关闭文件成功!!"
A saída do programa acima é:
Current I/O pointer position :0 Read String is : This is testPython is a great language. Yeah its great!! Current I/O pointer position :45 关闭文件成功!!