从文件开头删除字节数

时间:2013-08-27 12:44:54

标签: python file

我想复制一个没有前256个字节的文件。

在python中有一个很好的方法吗?

我猜这个简单的方法是用计数器读取字节字节,然后只有当它达到256时才开始复制。

我希望有更优雅的方式。

感谢。

3 个答案:

答案 0 :(得分:7)

with open('input', 'rb') as in_file:
    with open('output', 'wb') as out_file:
        out_file.write(in_file.read()[256:])

答案 1 :(得分:5)

使用seek跳过前256个字节,然后以块的形式复制文件,以避免将整个输入文件读入内存。此外,请务必使用with以便正确关闭文件:

with open('input.dat', 'rb') as inFile:
    inFile.seek(256)
    with open('output.dat', 'wb') as outFile:
        for chunk in iter(lambda: inFile.read(16384), ''):
            outFile.write(chunk)

答案 2 :(得分:3)

f = open('filename.ext', 'rb')
f.seek(255) # skip the first 255 bytes
rest = f.read() # read rest