How to compress a folder with java code

View: New views
2 Messages — Rating Filter:   Alert me  

How to compress a folder with java code

by javijava :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Hi to all,

I'm interested in compress a folder from java code but i only know how to compress a
single file.

anyone can tell me how to compress a folder with  the fiels inside and with the same structure'

thanks

Re: How to compress a folder with java code

by Chavali Sudhakar :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

// These are the files to include in the ZIP file
    String[] filenames = new String[]{"filename1", "filename2"};
   
    // Create a buffer for reading the files
    byte[] buf = new byte[1024];
   
    try {
        // Create the ZIP file
        String outFilename = "outfile.zip";
        ZipOutputStream out = new ZipOutputStream(new FileOutputStream(outFilename));
   
        // Compress the files
        for (int i=0; i<filenames.length; i++) {
            FileInputStream in = new FileInputStream(filenames[i]);
   
            // Add ZIP entry to output stream.
            out.putNextEntry(new ZipEntry(filenames[i]));
   
            // Transfer bytes from the file to the ZIP file
            int len;
            while ((len = in.read(buf)) > 0) {
                out.write(buf, 0, len);
            }
   
            // Complete the entry
            out.closeEntry();
            in.close();
        }
   
        // Complete the ZIP file
        out.close();
    } catch (IOException e) {
    }