Python - 设置文件EOF

时间:2017-06-08 14:42:50

标签: python-2.7 eof file-writing

说,出于某种原因,我有一个1 TB的文件。在Python中,如果我想添加10个字节,我可以寻找到最后,然后写一个10字节的字符串。但是,请说我希望减少10个字节。显然,在没有多余10个字节的情况下复制此文件需要花费大量时间(并且甚至可能没有HDD空间),然后删除旧文件。

在c ++ for Windows中,有一个函数SetEndOfFile,它允许我将文件大小更改为更小的文件,而无需重写文件。

python中是否有类似的功能可以执行此操作?我已经研究过,找不到任何东西......

1 个答案:

答案 0 :(得分:1)

哇,我想我看起来不够努力:truncate

f = open(fname)
f.seek(-10,2) # jump 10 bytes before end
f.truncate() # truncate it!!
f.close()