Usando módulos de buffer (StringIO, BytesIO, cStringIO) podemos imitar dados de string ou bytes como um ficheiro. Estes módulos de buffer ajudam-nos a imitar os nossos dados como um ficheiro normal que podemos utilizar para processamento.
Python2.7 estávamos a utilizar cStringIO ou StringIO enquanto lidávamos com este vapor de dados.Agora em Python 3.x, estamos a utilizar io.StringIO ou io.BytesIO do módulo io, uma vez que os módulos StringIO, e cStringIO já não estão disponíveis em Python 3.x.
In Python 2.7 O módulo StringIO também era capaz de manusear o Byte Unicode Mas em python3 terá de utilizar BytesIO separados para manusear Byte strings e StringIO para manusear Unicode strings.
- io.StringIO requer uma cadeia Unicode.
- io.BytesIO requer uma cadeia de bytes.
- StringIO.StringIO.StringIO permite uma cadeia Unicode ou Bytes.
- cStringIO.StringIO.StringIO requer uma cadeia de bytes que é codificada como uma cadeia de bytes.
Aqui é um exemplo simples utilizando o módulo io
Aqui, cada uma das sucessivas escritas anexam os dados no objecto do fluxo, tal como o ficheiro
Estes métodos de requer menções especiais:
getvalue()
Retrie todo o conteúdo do file” em qualquer altura antes do método file object’s close() ser chamado.
close()
Livre o buffer de memória e o trabalho feito com o objecto de buffer.
seek()
P>P>Pode usar procurar mover o cursor sobre os dados como seek(0) para o início do ficheiro