javazip4j

How to add a file in a specific folder (in the ZIP)


The following code, how to add a file to a zip using java:

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();
}

How am I able to add the file in a specific folder in this zip-archive?


Solution

  • I found the solution:

    Put the file you want to add in a specific folder and then use the method "addFolder()".

    All files within this folder will be added and if the same named folder is already in the zip, your folder will not be re-created, but the files will be added to the existing one

    Example:

    ZipFile zipFile = new ZipFile(source);
    ZipParameters parameters = new ZipParameters();
    
    zipFile.addFolder(new File("C:/Users/XXXXXX/Desktop/HELLO_Folder"), parameters);