File.read() sometimes not reading everything

Boris Boutillier boris.boutillier at arteris.net
Thu Mar 11 05:07:49 EST 2004


HI all,

I came across a strange behaviour with read method, and I'm not sure if
this is a filesystem problem or a misuse of this method.
I do the simple following thing :
f = open ('myFile','r')
content = f.read()
f.close()

When I use this lines really intensively sometimes, at random the content
is not the full content, it lacks some lines at the end.
When reading the file.read docstring I see that there can be some problems
with non-blocking file, but I suppose open() is by default creating a blocking
file.

Is the file line-buffered by default ? This could be a reason for this
early EOF, as I'm reading all the lines at once, and there is several
lines in the file ?

I'm at the moment trying to replace the previous read call by:
content = '\n'.join(f.readlines)
Not sure if this will work better, I'll say you.

Any other idea of this strange behaviour ? Can this be a problem with
filesystem also ?

Any ideas welcomed !

Boris



More information about the Python-list mailing list