浏览压缩文件夹以导入图像嗨,大家好,
我目前正在努力从zip存档中包含图形(tiff)。我确实找到了关于该主题的其他一些讨论,这些讨论似乎很有希望,但是我无法弄清楚我的特殊情况的有效语法。
我现在要处理的主要问题是,所有讨论似乎都在zip文件中只有一个“层”(例如,直接在其中包含多个文本文档的zip文件)。就我而言,我要查找的图形会自动压缩为文件夹。打开zip文件后,我将不得不导航到该文件夹以实际检索其中的文件列表(例如\\ filename.zip \ foldername \ graphics.tif)。我主要尝试通过不同的变体来访问它这个讨论以及这个帖子在这里 。但是,每当我尝试通过“ << dir”在zip文件中生成文件列表时,它只会返回一个空白列表。
到目前为止,我尝试将子文件夹合并到open语句中
za = open ("[...]\filename.zip\FolderName\", zip);
Show ( za << dir );使用打开的zip文件参考进一步导航(我不记得我尝试过的实际语法,已经删除了)或从两个版本中按文件名读取不同的图形文件
za = open ("[...]\filename.zip\FolderName\", zip);
dat = za << Read( "graphics.tif", Format( blob ) ); or dat = za << Read( "folderName\graphics.tif", Format( blob ) );是否有语法来浏览zip文件中的文件夹结构?或者,是否有可能在打开zip文件的同时合并一些“递归”语句,以获取嵌套在下方的所有文件?
我期待您可以分享任何意见。
最好的祝福
马尔特
回复:导航压缩文件夹以导入图像这很令人困惑,因为许多实用程序都显示zip文件的内容,就好像该zip文件中存在分层目录一样。它实际上是一个平面目录,并且zip目录不要求成员名称以任何特定方式使用正斜杠或反斜杠。我使用内置zip的Windows构建了test.zip。
za=open("$desktop/test.zip","zip");
za<
Windows内置的浏览器看起来像这样
Windows资源管理器浏览zip存档
看起来您需要在成员名称中使用正斜杠而不是反斜杠。
回复:导航压缩文件夹以导入图像你好 @Craige_Hales
感谢您的快速回答,我确实使用您的输入使语法能够正常工作。不幸的是,我无法将其用于我最初的欲望目标。
事实证明,我能够使用您提供的确切语法(独立于使用斜杠还是反斜杠)打开和读取一些zip文件,而其他文件仍然只返回空白列表。
我可以打开的文件和我无法打开的文件之间的主要区别似乎是zip文件的实际大小。在弄乱了一些尝试打开多个文件之后,当zip文件的文件大小超过大约2GB时,似乎存在一个隐藏边界(我将不得不与我们的IT部门联系,以查看是否存在其他差异)。我无法访问/确定的文件)。
我已经尝试过在打开和读取目录之间以及在读取目录和将其显示在日志之间执行20秒的等待时间,以确保它与计算时间/ jmp编组无关。到现在都无济于事。
通过jmp打开zip文件时,您是否知道大小限制?或者您还有其他建议可以尝试吗?
最好的祝福
马尔特
回复:导航压缩文件夹以导入图像JMP中的字符串大小和JMP的zip归档支持中的zip成员大小都限制为2GB。
(2GB为2 ^ 31;这是适合32位带符号整数的最大数字。)
JMP Blob不限于2GB。我认为将来的JMP版本可能也允许大于2GB的zip成员,然后可以将其读入blob。 @Paul_Nelson
您也许可以使用JMP的runprogram编写外部zip程序的脚本。如果外部程序是最近的,则可能支持> 2GB。