我可以通过maven-dependency插件解压zip文件,但是目前我有这个zip文件里面的其他zip文件包含的问题,我也需要解压缩它们。 我怎样才能做到这一点?
如果我select一个zip文件并右键单击“解压缩”,则会创build一个带有zip文件名的文件夹,并将zip文件的全部内容解压缩到该文件夹中。 不过,我想通过shell转换几个zip文件。 但是当我这样做 unzip filename.zip 文件夹"filename"不会被创build,但所有的文件被提取到当前目录中。 我已经看过参数,但没有这样的参数。 我也试过了 for zipfile in \*.zip; do mkdir $zipfile; unzip $zipfile -d $zipfile/; done 但2. $ zipfile和4. $ zipfile的.zip扩展名必须用sed删除。 如果我做 for zipfile in \*.zip; do mkdir sed 's/\.zip//i' $zipfile; unzip $zipfile -d sed 's/\.zip//i' $zipfile/; done 它不工作。 如何正确地replace$zipfile的.zip扩展名? 有比shell脚本更简单的方法吗?
我想从互联网下载一个zip文件,并将其解压缩到内存中,而不保存到临时文件中。 我怎样才能做到这一点? 这是我试过的: var url = 'http://bdn-ak.bloomberg.com/precanned/Comdty_Calendar_Spread_Option_20120428.txt.zip'; var request = require('request'), fs = require('fs'), zlib = require('zlib'); request.get(url, function(err, res, file) { if(err) throw err; zlib.unzip(file, function(err, txt) { if(err) throw err; console.log(txt.toString()); //outputs nothing }); }); [编辑]作为,build议,我尝试使用adm-zip库,我仍然无法完成这项工作: var ZipEntry = require('adm-zip/zipEntry'); request.get(url, function(err, res, zipFile) { if(err) throw err; var zip = new ZipEntry(); […]
unzip命令没有用于recursion解压缩存档的选项。 如果我有以下目录结构和档案: /Mother/Loving.zip /坏血病/海狗.zip /Scurvy/Cures/Limes.zip 我想把所有的档案解压到与每个档案同名的目录中: /Mother/Loving/1.txt /Mother/Loving.zip /坏血病/海狗/ 2.txt /坏血病/海狗.zip /Scurvy/Cures/Limes/3.txt /Scurvy/Cures/Limes.zip 我会发出什么命令或命令? 重要的是,这不会窒息其中有空格的文件名。
我的应用程序中有一个奇怪的错误。 在我的应用程序可以下载一个zip文件,阅读它的内容,也删除它。 不pipe它到底是什么。 问题:只有在摩托罗拉Xoom(版本4.0.4)我可以下载文件,解压缩,我可以读取数据,我可以删除一切。 但是,如果我尝试再次下载该文件,并在解压文件并将文件复制到SD卡时崩溃,并出现错误EBUSY(设备或资源繁忙)。 为什么只有第一次工作? 这意味着什么错误? 为什么我只在Xoom上得到这个错误? 我找不到任何解决scheme。 在所有其他设备上,它工作正常,没有错误或问题。 logcat的: 07-18 12:27:46.774: E/PrepareMagTask(10057): IOException 07-18 12:27:46.774: E/PrepareMagTask(10057): java.io.FileNotFoundException: /mnt/sdcard/Android/data/com.xxxxxx.android/files/content/23760/emag.db: open failed: EBUSY (Device or resource busy) 07-18 12:27:46.774: E/PrepareMagTask(10057): at libcore.io.IoBridge.open(IoBridge.java:406) 07-18 12:27:46.774: E/PrepareMagTask(10057): at java.io.FileOutputStream.<init>(FileOutputStream.java:88) 07-18 12:27:46.774: E/PrepareMagTask(10057): at java.io.FileOutputStream.<init>(FileOutputStream.java:73) 07-18 12:27:46.774: E/PrepareMagTask(10057): at com.xxxxx.android.util.io.ZipHelper.uncompressEntry(ZipHelper.java:35) 07-18 12:27:46.774: E/PrepareMagTask(10057): at com.xxxxx.android.task.PrepareMagTask.doInBackground(PrepareMagTask.java:271) 07-18 12:27:46.774: E/PrepareMagTask(10057): […]
我查看了JDK和Apache压缩库附带的默认Zip库,我不满意这三个原因: 他们臃肿,糟糕的APIdevise。 我必须写50行的锅炉板字节数组输出,zipinput,文件输出stream和closures相关的stream,并捕捉exception和我自己的字节缓冲区 ? 为什么我不能有一个看起来像这样的Zipper.unzip(InputStream zipFile, File targetDirectory, String password = null)和Zipper.zip(File targetDirectory, String password = null)的简单API? 它似乎压缩解压缩文件元数据和密码处理破坏。 另外,与我用UNIX获得的命令行压缩工具相比,我尝试的所有库都慢了2-3倍? 对我来说(2)和(3)是次要的,但我真的想要一个单线接口的好的testing库。
我有zip文件,其中包含一些其他的zip文件。 例如,邮件文件是abc.zip,它包含xyz.zip,class1.java,class2.java。 而xyz.zip包含文件class3.java和class4.java。 所以我需要提取使用java的zip文件到一个文件夹,该文件夹应该包含class1.java,class2.java,class3.java和class4.java。
有一个简单的例子,如何解压缩.zip文件并将文件解压缩到目录? 我目前使用zlib,虽然我知道zlib不直接处理zip文件,似乎在zlibs的“contrib”库中有几个额外的东西。 我注意到并阅读了“minizip”,在阅读了一些文档并查看了一些代码之后,我没有看到一个简单的例子,就是如何解压.zip文件并将这些文件解压到一个目录中。 我想find一个独立于平台的方式,但如果这是不可能的,那么我需要find一个Windows和Mac的方式。
我有一个Jar文件,其中包含其他嵌套的jar子。 当我在这个文件上调用新的JarFile()构造函数时,我得到一个exception,它说: java.util.zip.ZipException:打开zip文件时出错 当我手动解压这个Jar文件的内容并再次压缩时,它工作正常。 另外请注意,这个exception只在WebSphere 6.1.0.7及更高版本上才能看到。 同样的事情在tomcat和WebLogic上也能正常工作。 另外,当我使用JarInputStream而不是JarFile时,我能够读取Jar文件的内容,没有任何例外。 请让我知道,如果你有任何想法如何解决这个问题。 谢谢,桑迪亚
我正试图以编程方式解压缩压缩文件。 我曾尝试在.NET中使用System.IO.Compression.GZipStream类,但是当我的应用程序运行(实际上是一个unit testing),我得到这个exception: System.IO.InvalidDataException:GZip标头中的幻数不正确。 确保你传入一个GZipstream 我现在意识到.zip文件与.gz文件不同,而且GZip与Zip 。 但是,由于我能够通过手动双击压缩文件来提取文件,然后单击“提取所有文件”button,我认为在代码中也应该有这样做的方法。 因此,我试图使用Process.Start()与压缩文件的path作为input。 这使我的应用程序打开一个窗口,显示压缩文件中的内容。 这一切都很好,但应用程序将被安装在一个没有周围的服务器上点击“提取所有文件”button。 那么,如何让我的应用程序提取压缩文件中的文件呢? 还是有另一种方法来做到这一点? 我更喜欢用代码来做,而不用下载任何第三方库或应用程序。 安全部门不太喜欢那个…