Mega Code Archive

 
Categories / Java / File Input Output
 

Create a simple ZIP File

import java.io.BufferedInputStream; import java.io.BufferedOutputStream; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.util.zip.ZipEntry; import java.util.zip.ZipOutputStream; public class Main {   static String rmPath(String fName) {     int pos = fName.lastIndexOf(File.separatorChar);     if (pos > -1)       fName = fName.substring(pos + 1);     return fName;   }   public static void main(String args[]) throws Exception {     ZipOutputStream fout = new ZipOutputStream(new BufferedOutputStream(         new FileOutputStream(args[0])));     for (int n = 1; n < args.length; n++) {       BufferedInputStream fin = new BufferedInputStream(new FileInputStream(           args[n]));       ZipEntry ze = new ZipEntry(rmPath(args[n]));       fout.putNextEntry(ze);       int i;       do {         i = fin.read();         if (i != -1)           fout.write(i);       } while (i != -1);       fout.closeEntry();       fin.close();       System.out.println("Compressing " + args[n]);       System.out.println(" Original Size: " + ze.getSize()           + " Compressed Size: " + ze.getCompressedSize() + "\n");     }     fout.close();   } }