2009年6月6日

Apache Commons Compress Unzip file

Apache Commons Compress

import java.io.File;
import java.io.FileOutputStream;
import java.io.InputStream;
import java.util.Enumeration;

import org.apache.commons.compress.archivers.zip.ZipArchiveEntry;
import org.apache.commons.compress.archivers.zip.ZipFile;
import org.apache.commons.io.FileUtils;
import org.apache.commons.io.IOUtils;

public class Main {

public static void main(String[] args) throws Exception {
File archiveFile = new File(args[0]);
File outPath = new File(args[1]);

ZipFile zipFile = new ZipFile(archiveFile);
Enumeration e = zipFile.getEntries();
while (e.hasMoreElements()) {
ZipArchiveEntry entry = e.nextElement();
File file = new File(outPath, entry.getName());
if (entry.isDirectory()) {
FileUtils.forceMkdir(file);
} else {
InputStream is = zipFile.getInputStream(entry);
FileOutputStream os = FileUtils.openOutputStream(file);
try {
IOUtils.copy(is, os);
} finally {
os.close();
is.close();
}
file.setLastModified(entry.getTime());
}
}
}

}

沒有留言:

網誌存檔