施用java读取gz压缩的hdfs文件

使用java读取gz压缩的hdfs文件根据hdfs文件的后缀类型自动识别并解压:?Path hdfsPath new Path(args[0])

使用java读取gz压缩的hdfs文件

根据hdfs文件的后缀类型自动识别并解压:

?

Path hdfsPath = new Path(args[0]);Configuration conf = new Configuration();FileSystem fs = FileSystem.get(hdfsPath.toUri(),conf); CompressionCodecFactory factory = new CompressionCodecFactory(conf);CompressionCodec codec = factory.getCodec(hdfsPath);FSDataInputStream inputStream = fs.open(hdfsPath);BufferedReader reader = null;try {if (codec == null) {reader = new BufferedReader(new InputStreamReader(inputStream));} else {CompressionInputStream comInputStream = codec.createInputStream(inputStream);reader = new BufferedReader(new InputStreamReader(comInputStream));}} catch (Exception e) {e.printStackTrace();}
?