java - 如何在特定文件夹中添加文件(在 ZIP 中)

标签 java zip4j

以下代码,如何使用 java 将文件添加到 zip:

String source = "C:/Users/XXXXX/Desktop/Helicopter.zip";
try {
  ZipFile zipFile = new ZipFile(source);

  ZipParameters parameters = new ZipParameters();

  zipFile.addFile(new File("C:/Users/XXXXXX/Desktop/HELLO_HELICOPTER.txt"), parameters);


} catch (net.lingala.zip4j.exception.ZipException e) {
  e.printStackTrace();
}

如何将文件添加到此 zip 存档的特定文件夹中?

最佳答案

在由 net.lingala.zip4j.ZipFile 创建的 zip 文件中保持原始文件夹结构:

ZipFile zipFile = new ZipFile("target/new.zip");
ZipParameters zipParameters = new ZipParameters();
zipParameters.setFileNameInZip("folder/subfolder/file-name.txt");

zipFile.addFile(new File("folder/subfolder/file-name.txt"), zipParameters);

如果不设置 zipParameters.setFileNameInZip,文件将添加到 zip 文件的根目录中,没有原始目录结构。

关于java - 如何在特定文件夹中添加文件(在 ZIP 中),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22461428/

相关文章:

java - 等待 Angular 完成加载问题

java - 使用 JavaFX 检查单击了哪个 Button 对象

java - Uri 文件大小始终为 0

java - 监控 Zip4J extractAll() 方法进度监视器

java - 未经其他人许可使用文件数据

java - 从 zipFile 获取 inputStream 然后添加到另一个 zipFile 获取空指针异常

java - 使用 Java 将 zip 文件解压到 HDFS

java - C++ 中是否有与 Java 中的 TreeMap 对应的类?

java - 并行文件处理 : What are recommended ways?