Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/windows/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/image/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 在Windows上解压缩bz2文件_Python_Windows_Python 2.7_Anaconda_Bz2 - Fatal编程技术网

Python 在Windows上解压缩bz2文件

Python 在Windows上解压缩bz2文件,python,windows,python-2.7,anaconda,bz2,Python,Windows,Python 2.7,Anaconda,Bz2,我正在尝试使用以下代码片段解压缩bz2文件,这些代码片段在不同的地方提供: bz2_data = bz2.BZ2File(DATA_FILE+".bz2").read() open(DATA_FILE, 'wb').write(bz2_data) 然而,我得到的文件比我预期的要小得多 当我用7ZGUI提取文件时,我收到一个大小为248MB的文件。然而,使用上面的代码,我得到的文件是879kb 当我读取提取的XML文件时,我可以看到文件的其余部分如我所料丢失了 我在Windows机器上运行ana

我正在尝试使用以下代码片段解压缩bz2文件,这些代码片段在不同的地方提供:

bz2_data = bz2.BZ2File(DATA_FILE+".bz2").read()
open(DATA_FILE, 'wb').write(bz2_data)
然而,我得到的文件比我预期的要小得多

当我用7ZGUI提取文件时,我收到一个大小为248MB的文件。然而,使用上面的代码,我得到的文件是879kb

当我读取提取的XML文件时,我可以看到文件的其余部分如我所料丢失了

我在Windows机器上运行anaconda,据我所知,bz2在文件实际结束之前达到EOF


顺便说一句,我已经遇到了,两个都没有什么好处。

如果这是一个多流文件,那么Python 3.3之前的模块不支持它:

注意:此类不支持包含多个流的输入文件,如pbzip2工具生成的流。当读取这样的输入文件时,只有第一个流可以访问。如果您需要支持多流文件,请考虑使用PyPI提供的第三方BZ2FLE模块。此模块提供Python 3.3的BZ2File类的一个后端口,该类支持多流文件


另一种选择是插入式替换:应该可以。它是多流文件吗?你可以试一试。@Gerrat谢谢。这确实有效。我想你应该加上这个作为答案,这样我才能接受它作为正确答案。