Python BZ2 IOError: 无效的数据流。

3
Traceback (most recent call last):
  File "TTRC_main.py", line 309, in <module>
    updater.start()
  File "TTRC_main.py", line 36, in start
    newFileData = bz2.BZ2File("C:/Program Files (x86)/Toontown Rewritten/temp/phase_7.mf.bz2"," rb").read()
IOError: invalid data stream

我获取文件的代码出现了错误,导致出现了以下错误:

newFileComp = urllib.URLopener()
newFileComp.retrieve("http://kcmo-1.download.toontownrewritten.com/content/phase_7.mf.bz2", "C:/Program Files (x86)/Toontown Rewritten/temp/phase_7.mf.bz2")

我该怎么做才能修复这个错误?这个错误信息并不是很详细(对我来说)。
3个回答

4
问题是否出现是因为文件模式中有“额外的空格”?
newFileData = bz2.BZ2File("C:/Program Files (x86)/Toontown Rewritten/temp/phase_7.mf.bz2"," rb").read()

尝试这个 -

newFileData = bz2.BZ2File("C:/Program Files (x86)/Toontown Rewritten/temp/phase_7.mf.bz2","rb").read()

0

对我来说,问题在于文件不是.bz2格式。


对我来说,这个bz2文件除了我期望的csv文件之外,还包含其他文件。 - mins
同样的问题在这里 - 我忘记使用bunzip2的-k选项来保留原始文件,并意外地引用了未压缩的文件名。 - James_SO

0
  1. 请确保文件格式为bz2。
  2. 请确保读写操作相同,即“r”、“w”或“rb”、“wb”。
  3. 如Anand所说,“rb”中不要有空格。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接