Folder/File Zipping in java

import java.io.BufferedInputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.util.zip.ZipEntry;
import java.util.zip.ZipOutputStream;

public class Zip {
       public static void main(String[] args) {

               try {
                       BufferedInputStream bi = null;
                       FileOutputStream fileOutputStream = new FileOutputStream(
                                       "sample.zip");
                       ZipOutputStream outputStream = new ZipOutputStream(
fileOutputStream);
                       outputStream.setMethod(ZipOutputStream.DEFLATED);
                        byte data[]=new byte[2048];
                       File file = new File("C://anil");
                       File files[] = file.listFiles();

                       for (File f : files) {

                               System.out.println(f);

                               FileInputStream fileInputStream = new FileInputStream(f);

                               bi = new BufferedInputStream(fileInputStream,2048);

                               ZipEntry entry = new ZipEntry(f.getAbsolutePath());

                               outputStream.putNextEntry(entry);
                               int count;
                               while ((count =bi.read(data,0,2048))!= -1) {
                                       outputStream.write(2048);
                               }
                               bi.close();
                       }
                       outputStream.close();
                       System.out.println("zip created");
               } catch (Exception e) {
                       e.printStackTrace();
               }

       }
}

No comments:

Post a Comment