Here you can find the source of zip(String dir, String destFile)
public static void zip(String dir, String destFile) throws Exception
//package com.java2s; //License from project: Apache License 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 { public static void zip(String dir, String destFile) throws Exception { BufferedInputStream origin = null; FileOutputStream dest = new FileOutputStream(destFile); try (ZipOutputStream out = new ZipOutputStream(new BufferedOutputStream(dest));) { int BUFFER = 2048; // out.setMethod(ZipOutputStream.DEFLATED); byte data[] = new byte[BUFFER]; // get a list of files from current directory File f = new File(dir); String files[] = f.list(); for (int i = 0; i < files.length; i++) { FileInputStream fi = new FileInputStream(dir + File.separator + files[i]); origin = new BufferedInputStream(fi, BUFFER); ZipEntry entry = new ZipEntry(files[i]); out.putNextEntry(entry); int count; while ((count = origin.read(data, 0, BUFFER)) != -1) { out.write(data, 0, count); }// w w w . jav a 2s .c o m origin.close(); } } } }