package storm.hadoop;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.zip.GZIPOutputStream;
public class GZIPUtil {
public static void compressFile(String inFileName) {
String outFileName = inFileName + ".gz";
FileInputStream in = null;
try {
in = new FileInputStream(new File(inFileName));
}catch (FileNotFoundException e) {
System.out.println("Could not find the inFile..."+inFileName);
}
GZIPOutputStream out = null;
try {
out = new GZIPOutputStream(new FileOutputStream(outFileName));
}catch (IOException e) {
System.out.println("Could not find the outFile..."+outFileName);
}
byte[] buf = new byte[10240];
int len = 0;
try {
while (((in.available()>10240)&& (in.read(buf)) > 0)) {
out.write(buf);
}
len = in.available();
in.read(buf, 0, len);
out.write(buf, 0, len);
in.close();
System.out.println("Completing the GZIP file..."+outFileName);
out.flush();
out.close();
}catch (IOException e) {
}
}
public static void main(String[] args) {
String str = "/home/guoqiang.ma/data.log";
System.out.println(str);
long start = System.currentTimeMillis();
compressFile(str);
long end = System.currentTimeMillis();
System.out.println("spent "+(end-start)+" ms");
}
}