Java 将文件压缩为GZIP格式

From: http://beginnersbook.com/2014/07/how-to-compress-a-file-in-gzip-format/


/* 将文件压缩为GZIP格式,使用GZIPOutputStream的write()方法将array of bytes写入压缩文件中*/import java.io.*;
import java.util.zip.GZIPOutputStream;public class Exercise {public static void main(String args[]) {Exercise zipObj = new Exercise();zipObj.gzipMyFile();}public void gzipMyFile() {byte[] buffer =  new byte[1024];try {// Specify Name and Path of Output GZip file hereGZIPOutputStream gos = new GZIPOutputStream(new FileOutputStream("/home/zjz/Desktop/myFile"+ ".gz"));// Specify the input file hereFileInputStream fis = new FileInputStream("/home/zjz/Desktop/myNewFile.txt");// Read from input file and write to output GZip fileint length;// fis.read(buffer), 结果时Buffer有了内容,同时返回读取内容的长度,读到文件末尾时读取内容的长度变为-1while((length = fis.read(buffer)) > 0) {/* public void write(byte[] buf, int off, int len):Write array of bytes to the compressed output stream.This method will block until all the bytes are written.Parameter:buf - the data to writtenoff - the start offset of the datalen - the length of the data*/gos.write(buffer, 0, length);}fis.close();/* public void finish(): Finish writing compressed data tothe output stream without closing the underlying stream*/gos.finish();gos.close();System.out.println("File Compressed!!");} catch (FileNotFoundException e) {e.printStackTrace();} catch (IOException e) {e.printStackTrace();}}}



本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部