Hadoop学习--测试压缩--day05

import java.io.FileInputStream;

专注于为中小企业提供做网站、网站建设服务,电脑端+手机端+微信端的三站合一,更高效的管理,为中小企业和静免费做网站提供优质的服务。我们立足成都,凝聚了一批互联网行业人才,有力地推动了上千多家企业的稳健成长,帮助中小企业通过网站建设实现规模扩充和转变。

import java.io.FileOutputStream;

import org.apache.hadoop.conf.Configuration;

import org.apache.hadoop.io.IOUtils;

import org.apache.hadoop.io.compress.CompressionOutputStream;

import org.apache.hadoop.io.compress.DeflateCodec;

import org.apache.hadoop.util.ReflectionUtils;

import org.junit.BeforeClass;

import org.junit.Test;

public class TestCompressDemo {

  private static Configuration conf;

  @BeforeClass

   public static void iniConf(){

 conf = new Configuration();

  }

  /**

   * 使用deflate压缩算法

   */

  @Test

  public void compressByDeflate() throws Exception{

//deflate编码器

 String codecStr = "org.apache.hadoop.io.compress.DeflateCodec";

 Class clazz = (Class) Class.forName(codecStr);

 DeflateCodec codec = ReflectionUtils.newInstance(clazz,conf);

//对输出流包装,产生新的压缩流

 FileOutputStream fos = new FileOutputStream("E:/zhaopian.deflate");

 CompressionOutputStream comOut = codec.createOutputStream(fos);

 //写入流

 IOUtils.copyBytes(new FileInputStream("E:/zhaopian.jpg"),comOut,1024);

 

  }

  /**

   * 使用deflate压缩算法

   */

  @Test

  public void compressByDeflate2() throws Exception{

 //直接实例化codec对象

 DeflateCodec codec = new DeflateCodec();

 //检查并设置conf对象

 ReflectionUtils.setConf(codec,conf);

 //对输出流包装,产生新的压缩流

 FileOutputStream fos = new FileOutputStream("E:/zhaopian2.deflate");

 CompressionOutputStream comOut = codec.createOutputStream(fos);

 //写入流

 IOUtils.copyBytes(new FileInputStream("E:/zhaopian.jpg"), comOut, 1024);

  }

}


当前文章:Hadoop学习--测试压缩--day05
URL网址:http://scyanting.com/article/iihsss.html