Python 写入二进制文件的末尾

Python 写入二进制文件的末尾,python,Python,我是Python新手,试图用zer0s覆盖文件的最后128字节。我做错了什么 try: f = open(outputFile, "wb") f.seek(128, 2) # seek relative to end of file f.write(b'\0'*128) f.close() except Exception as e: sys.exit('Error writing output file ' + st

我是Python新手,试图用zer0s覆盖文件的最后128字节。我做错了什么

   try:
      f = open(outputFile, "wb")
      f.seek(128, 2)   # seek relative to end of file
      f.write(b'\0'*128)
      f.close()

   except Exception as e:
      sys.exit('Error writing output file ' + str(e))
它运行正常,但我的2mB文件被截断为256字节,全部为0。

As,在
'w'
模式下打开会截断文件(即,删除其现有内容)。尝试在
'r+b'
模式下打开它

此外,如上所述(尽管不完全清楚),相对于文件末尾的搜索仍然使用正数表示“前进”,而负数表示“后退”(即,朝向文件开头)。您正在查找超过文件结尾的内容。使用
seek(-128,2)

As,在
'w'
模式下打开会截断文件(即,删除其现有内容)。尝试在
'r+b'
模式下打开它

此外,如上所述(尽管不完全清楚),相对于文件末尾的搜索仍然使用正数表示“前进”,而负数表示“后退”(即,朝向文件开头)。您正在查找超过文件结尾的内容。使用
seek(-128,2)

As,在
'w'
模式下打开会截断文件(即,删除其现有内容)。尝试在
'r+b'
模式下打开它

此外,如上所述(尽管不完全清楚),相对于文件末尾的搜索仍然使用正数表示“前进”,而负数表示“后退”(即,朝向文件开头)。您正在查找超过文件结尾的内容。使用
seek(-128,2)

As,在
'w'
模式下打开会截断文件(即,删除其现有内容)。尝试在
'r+b'
模式下打开它


此外,如上所述(尽管不完全清楚),相对于文件末尾的搜索仍然使用正数表示“前进”,而负数表示“后退”(即,朝向文件开头)。您正在查找超过文件结尾的内容。使用
seek(-128,2)

您似乎正在查找文件末尾之后的128个字节<代码>帮助(file.seek)表示相对于文件末尾的查找应该是负数。但我不知道为什么会导致文件被截断。您似乎在查找文件末尾后的128字节<代码>帮助(file.seek)表示相对于文件末尾的查找应该是负数。但我不知道为什么会导致文件被截断。您似乎在查找文件末尾后的128字节<代码>帮助(file.seek)表示相对于文件末尾的查找应该是负数。但我不知道为什么会导致文件被截断。您似乎在查找文件末尾后的128字节<代码>帮助(file.seek)表示相对于文件末尾的查找应该是负数。我不知道为什么这会导致一个被截断的文件,虽然。这是我们在他的。我猜在翻译过程中有些东西丢失了,这就是我们在他的书中所做的。我猜在翻译过程中有些东西丢失了,这就是我们在他的书中所做的。我猜在翻译过程中有些东西丢失了,这就是我们在他的书中所做的。我想在翻译过程中有些东西丢失了