使用 JAVA 将包含文件的文件夹添加到 zip 文件中
我正在使用 java 的 java.util.zip api 将文件和文件夹添加到 zip 文件中,但是当我将多个文件添加到同一文件夹中时,它删除了旧内容。有什么方法可以将文件添加到 zip 文件中而不修改文件夹中的现有内容? 请帮忙,这很重要!
这是我的示例代码:
ZipOutputStream zip = null;
FileOutputStream fileWriter = null;
fileWriter = new FileOutputStream(destZipFile);
zip = new ZipOutputStream(fileWriter);
zip.putNextEntry(new ZipEntry(destFilePath));
zip.write(content);
zip.flush();
zip.close();
I am using java's java.util.zip api to add files and folders to a zip file, but when i add multiple files into the same folder, it deleted the old contents. Is there any way i can add files into the zip file without modifying existing contents in the folder?.
Kindly help, its important!
This is my sample code:
ZipOutputStream zip = null;
FileOutputStream fileWriter = null;
fileWriter = new FileOutputStream(destZipFile);
zip = new ZipOutputStream(fileWriter);
zip.putNextEntry(new ZipEntry(destFilePath));
zip.write(content);
zip.flush();
zip.close();
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
如果您想将新文件添加到现有 zip 文件中,则必须首先解压缩所有内容,然后添加所有文件并再次压缩。
有关示例,请参阅此链接。
If you want to add a new file to an existing zip file, you must first unzip everything, then add all the files and zip again.
See this link for samples.
我发现过一次...它会创建一个临时文件,并在添加额外文件之前将现有 zip 中的所有文件添加到“新”zip 中。如果两个文件具有相同的名称,它只会添加“最新”的文件。
编辑:
我认为这已经有两年多了,所以可能有些东西已经不再是最新的了。
I found this once... It creates a temporary file and adds all files from the existing zip to the 'new' zip before adding the extra files. If two files have the same name, it only adds the 'newest' one.
EDIT:
I think this is more than 2 years old, so possibly some things are not really up to date anymore.