java调用HDFS API问题

ddxtx 发布于 2016/05/30 16:11
阅读 143
收藏 0

java调用HDFS的api,读取hdfs上的文件内容,然后采用压缩的方式写回HDFS,现在遇到的问题是

-get 文件到本地,解压不了,提示压缩文件损坏,而在hdfs上-text可以查看到压缩数据,有遇到相同问题的朋友么?

下面是我用的代码

FileSystem fs=null; try {
    fs = FileSystem.get(URI.create(file), conf);
}catch (Exception e){System.out.println("配置FileSystem失败");}
Path path = new Path(file); try {
    FSDataOutputStream out1 = fs.create(path);
    Class<?> codecClass = Class.forName("org.apache.hadoop.io.compress.BZip2Codec");
    CompressionCodec codec = (CompressionCodec) ReflectionUtils.newInstance(codecClass, conf);
   OutputStream out= codec.createOutputStream(out1); for(int i=0;i<content.size();i++)
    {
       out.write(content.get(i).getBytes());
    }
}catch (Exception e){System.out.println("建立io输出流失败");}

加载中
返回顶部
顶部