问题标签 [zipinputstream]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
545 浏览

java - 在 Java 中删除 jar 文件 META-INF 文件夹

我正在使用以下方法过滤掉 META-INF 文件夹及其内容:

方法在这里找到:https ://stackoverflow.com/a/22433569/3952266

唯一的问题是,当它创建新文件时,它只输出原始大小的十分之一的文件。

0 投票
0 回答
256 浏览

ios - 如何在 IOS/Objective-C 中使用 ZipInputStream(JAVA)?

我需要读取下一个 ZIP 文件条目并将流定位在条目数据的开头(ZipInputStream getNextEntry)。如何在 Objective-C/IOS 中执行此操作,因为我想在下载 zip 文件时一个一个地处理它。我还没有找到任何 zip 库来做到这一点。

任何帮助,将不胜感激

谢谢

0 投票
1 回答
373 浏览

java - ZipInputStream 和 DigestInputStream 不能一起工作

当我尝试即时计算 zip 文件的 MD5 并同时解压缩时,对于某些 zip 文件它不起作用:尽管文件没有损坏,但 MD5 总和不正确。

这是我的代码片段:

你能帮助我吗?

谢谢!前!

0 投票
1 回答
270 浏览

android - Zip 异常:解压缩 zip 文件时未命名条目

我已经下载了 zip 文件,当我解压缩文件时,我得到了上述异常。以下是我解压缩 zip 文件后的结构。

zip结构(解压后):folder1 subfolder1 sub1 sub2 subfolder2 subf1 subf2

0 投票
1 回答
6317 浏览

java - 如何将字节数组转换为 zip 文件并在 java 中下载到浏览器中

我需要编写一个代码来将字节数组转换为 zip 文件并使其在 spring MVC 中下载。字节数组来自最初是 zip 文件的 web 服务。Zip 文件有一个文件夹,该文件夹包含 2 个文件。我编写了以下代码以将字节数组转换为 zip 输入流。但我无法转换为 zip 文件。请帮助我。这是我的代码。

0 投票
0 回答
125 浏览

java - 编辑内容后 Zip 文件夹损坏

我正在尝试使用 ZipOutputStream/ZipIntputStream 将压缩字节数组复制到另一个数组,但结果数组似乎不等于原始数组,为什么会出错?

通过修改条目的更新 CRC 解决如下:-

CRC32 crc = 新的 CRC32(); crc.reset();

0 投票
2 回答
3365 浏览

java - java zipentry getsize 返回 -1

Java zipEntry.getSize() 返回实际文件的大小,有时它返回-1(尽管文件大小大于0)。

Java API 文档说“返回条目数据的未压缩大小,如果未知,则返回 -1。”

不确定它会在什么情况下返回-1,即在什么情况下它将是未知的?

0 投票
1 回答
1105 浏览

java - 无法使用 java 解压缩文件,但能够使用 7zip 解压缩文件

我正在尝试使用 java 解压缩文件,但以下代码没有进入 while 循环,因为 'ze' 为空。但是,我可以使用 7zip 应用程序解压缩同一个文件。有人可以让我知道为什么会这样吗?

尝试{

0 投票
1 回答
2958 浏览

java - 使用 ZipInputStream 解压缩永远不会完成

我正在使用 AsyncTask 解压缩文件,一切似乎都进行得很顺利(ZIP 存档中的所有文件都已提取),但我的解压缩方法从未完成。

这是我的解压缩类的源代码:

当我逐行调试它时,它运行良好,直到它解压缩所有文件,然后它到达zis.closeEntry(),并且调试器只是“消失”,即下一行 ( Log.wtf(...)) 永远不会执行。我的 AsyncTask 从未完成,就好像我陷入了无限循环?!但是查看来源ZipInputStream.closeEntry()似乎没有任何循环或任何可疑之处?

我也尝试使用ZipFile而不是提取 ZIP 存档ZipInputStream,但随后出现以下错误:

ZIP 文件没有任何问题,我已经zip -v -T在 Mac OSx 上对其进行了测试。我还尝试使用 ZIP 版本 3.0 和 2.1(原始版本为 2.0)重新压缩它。我可以在 Mac OSx 上解压缩所有版本而没有任何问题(使用 Unarchiver and Archive Utility)。

这让我发疯了,有什么可能是错的?

 

更新(已解决)

原来是一个非常愚蠢的问题,与解压缩无关。

我在解压缩之前从服务器下载 ZIP 文件,显然我忘记close()在开始解压缩操作之前调用下载操作的输出流。

也许这个线程可以帮助其他犯同样愚蠢错误的人。

0 投票
1 回答
771 浏览

java - 如何在 JAVA 中将 ZipOutputStream 服务到网络

我正在编写一个服务器JAVA,客户端请求下载多个文件,服务器将创建一个ZipOutputStream并立即提供服务。另一方面,另一个线程将写入ZipOutputStream. 我用过piped input/output stream

代码

但是当我单击下载按钮时,它会下载(立即完成)一个小文件(损坏),而我的 zip 创建作业仍在运行。我怎样才能同步这两个工作?