2017-06-08 1 views
1

何らかの理由で1 TBのファイルがあります。 Pythonでは、10バイトを追加したい場合は、最後まで探し、10バイトの文字列を書くことができます。しかし、私はそれの終わりから10バイトをカットしたいと言います。明らかに、余分な10バイトを除いてこのファイルをコピーしてから古いファイルを削除するには、ばかげた時間がかかります(HDDスペースもないかもしれません)。Python - ファイルセットEOF

Windows版のC++には、ファイルの書き換えを行わずにファイルサイズを小さくする機能があるSetEndOfFileがあります。

これを行うPythonにも同様の機能がありますか?私が研究してきたし、何かを見つけることができません...

答えて

1

うわー、私は十分に懸命に見ていなかったと思います:truncate

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