gzip的使用

  经常会有文件过大,给文件的传输和增添了很多的麻烦,早先得知apach有个base64貌似可以用来压缩文件,但是测试没有什么效果,反而增大了文件的大小。今天了解了java自带的gzip包,如获至宝,超级好用又方便,记录下。

 

一、文件压缩

 public static void compress(String fp_r,String fp_w){
    	try{
    		OutputStreamWriter os = new OutputStreamWriter(new GZIPOutputStream(new FileOutputStream(fp_w)),"utf-8");
        	PrintWriter pr = new PrintWriter(os);
        	BufferedReader br = null;
        	br = new BufferedReader(new InputStreamReader(new FileInputStream(fp_r), "utf-8"));
        	String line = null;
        	while((line = br.readLine())!=null){
        		pr.println(line);
        	}
        	pr.close();
        	br.close();
    	}catch(Exception e){
    		e.printStackTrace();
    	}    	
    }

    

二、文件解压

public static void decompress(String fp_r,String fp_w){
    	try{
    		BufferedReader br = null;
        	InputStreamReader is = new InputStreamReader(new GZIPInputStream(new FileInputStream(new File(fp_r))),"utf-8");
        	br = new BufferedReader(is);
        	PrintWriter pr = new PrintWriter(new OutputStreamWriter(new FileOutputStream(fp_w),"utf-8"));
        	String line = null;
        	while((line = br.readLine())!=null){
        		pr.println(line);
        	}
        	br.close();
        	pr.close();
    	}catch(Exception e){
    		e.printStackTrace();
    	}    	
    }

  

posted @ 2015-11-17 16:26  紫巅草  阅读(804)  评论(0编辑  收藏  举报