2

如果我从头开始创建一个稀疏文件,并且我想让它的大小为n ,我将使用 bytestream.seek(n-1) 来偏移指针,然后在最后写入一个空字节。比写一个长度为 n 的字节流快得多!

但是,如果我用 open(...,'ab') 打开了该文件,则 seek() 不再是一个选项,只要我调用 write(),位置就会重置到文件末尾,如文档。似乎使用 python 的修正时唯一的选择是写入每个单独的空字节。

是否有另一种有效且快速地将空字节附加到预先存在的文件的方法?

4

1 回答 1

1

确实 append 模式会失败seek,但部分目的是为了比 append 模式seek灵活。在更新模式下打开( 'r+b'),您可以找到或超过文件末尾。(您可以在文本模式下寻找但不能超过结尾。

于 2019-01-10T14:20:42.907 回答