package org.kevoree.library.javase.webserver.wordpress;
import java.io.*;
import java.util.zip.ZipEntry;
import java.util.zip.ZipInputStream;
/**
* Created by IntelliJ IDEA.
* User: duke
* Date: 15/12/11
* Time: 10:59
* To change this template use File | Settings | File Templates.
*/
public class ZipHelper {
public static void main(String[] ags){
System.out.println(unzipToTempDir(ZipHelper.class.getClassLoader().getResourceAsStream("wordpress-3.3-fr_FR.zip")).getAbsolutePath());
}
public static File unzipToTempDir(InputStream res) {
try {
File tempDir = File.createTempFile("tempDir", "kevTemp");
tempDir.delete();
tempDir.mkdir();
ZipInputStream zis = new ZipInputStream(res);
ZipEntry entry;
while ((entry = zis.getNextEntry()) != null) {
if (entry.isDirectory()) {
new File(tempDir.getAbsolutePath() + File.separator + entry.getName()).mkdirs();
} else {
BufferedOutputStream outputEntry = new BufferedOutputStream(new FileOutputStream(new File(tempDir + File.separator + entry.getName())));
byte[] buffer = new byte[1024];
int len = 0;
while (zis.available() > 0) {
len = zis.read(buffer);
if(len > 0){
outputEntry.write(buffer, 0, len);
}
}
outputEntry.flush();
outputEntry.close();
}
}
zis.close();
return tempDir;
} catch (Exception e) {
e.printStackTrace();
return null;
}
}
}