【问题标题】:MATLAB: error unzipping large files (above 4GB)MATLAB:解压大文件时出错(超过 4GB)
【发布时间】:2016-06-18 00:26:55
【问题描述】:

我有一个 for 循环,它遍历大约一百个文件,解压缩并执行一些操作。它适用于其中的 90 个,但在大约 4GB 以上的文件中,我收到错误消息:(使用解压缩时出错(第 84 行)无效的 zip 文件“C:\filename.zip”。)

有没有办法在 MATLAB 中解压这些较大的文件?

谢谢

【问题讨论】:

  • 听起来像 windows 的东西。 FAT32的限制不是4GB什么的还是我完全弄错了?
  • 你能在命令行解压文件吗?您正在运行哪个操作系统?
  • 我使用的是 windows 7 专业版,3.60 GHz 处理器,16.0 GB RAM,64 位操作系统
  • 而你的文件系统是 FAT32 不是吗...?
  • 对于其他人:MATLAB 的 unzip 在后台使用 java,文件大小 > 4 gigs 的例外来自 org.apache.tools.zip.ZipFile 调用,它位于 try/catch 块内。

标签: matlab file zip unzip


【解决方案1】:

使用 4GB 以上的文件需要 ZIP64,您使用的 MATLAB 版本不支持(不确定是否是最近版本添加的)。

对于可以使用 python 库的最新 MATLAB 版本,请使用 python 解压缩命令(支持 ZIP64)。对于较旧的 MATLAB 版本,请寻找替代库,例如 Apache Commons Compress。

【讨论】:

  • 对如何执行此操作有任何建议吗?我的 zip 文件是一个巨大的图像集..我尝试 fh=py.open('file.zip'); z=py.zipfile.ZipFile(fh);然后 imageset=z.extract('data/Intensity.data');-- 这会加载一段时间,但我最终得到了一组 1x49 的空字符串,而不是 500x1500x 的图像文件
  • 不幸的是,我无法进一步帮助您,从未使用 python 解压缩,而且我的 MATLAB 版本太旧了,无法拥有 python 桥。它只是我所知道的唯一一个已经存在的图书馆。我的建议:先用 python 试试。如果您已经在该级别上失败了,请提出一个新问题。同时,python 方面的专家多于 python&matlab 方面的专家。如果您无法将工作 python 代码转换为 matlab,请向我们展示 python 代码,我相信这里有人能够从 matlab 正确调用它。
  • 好的,谢谢,我认为这让我朝着正确的方向前进,非常感谢
猜你喜欢
  • 2021-09-09
  • 2010-10-16
  • 1970-01-01
  • 2018-02-16
  • 2013-02-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-08-08
相关资源
最近更新 更多