JAVA 读取lzo压缩文件
今天犯了一个愚蠢的问题,用lzo做过压缩的数据,用lzop去读,但疼痛了好一会儿。
lzopcode和lzocode的做个简单介绍:
1.lzocode压缩过的文件都是以.lzo_deflate结尾,相应的加载类:(com.hadoop.compression.lzo.LzoCodec)
2.zopcode压缩过的文件都以.lzo结尾(com.hadoop.compression.lzo.LzopCodec)
读取lzocode文件
private static Configuration conf = new Configuration(true);
private static FileSystem hdfs;
private static Class<?> codecClass ;
private static CompressionCodec codec;
static {
String path = "/usr/local/webserver/hadoop/etc/hadoop/";
conf.addResource(new Path(path + "core-site.xml"));
conf.addResource(new Path(path + "hdfs-site.xml"));
//加载解压lzo的class,对应的还有lzop的class
codecClass = Class.forName("com.hadoop.compression.lzo.LzoCodec");
codec = (CompressionCodec)ReflectionUtils.newInstance(codecClass, conf);
}
public List<String> readFile(String dir) {
InputStream input = null;
List<String> list = new LinkedList<String>();
try {
Path path = new Path(dir);
FileSystem hdfs = FileSystem.get(URI.create(dir),conf);
//获取hdsf上文件夹下面的文件
FileStatus[] fileStatus = hdfs.listStatus(path);
//遍历文件,逐一读取内容
for (int i = 0; i < fileStatus.length; i++) {
input = hdfs.open(new Path(fileStatus[i].getPath().toString()));
//解压缩流
input = codec.createInputStream(input);
list.addAll(IOUtils.readLines(input,"utf8"));
}
} catch (IOException e) {
e.printStackTrace();
}finally{
try {
if(input != null)
input.close();
hdfs.close();
} catch (IOException e) {
e.printStackTrace();
}
}
return list;
}
分享到:
相关推荐
本文分为3部分,即Gzip压缩文件的写与读、Snappy压缩文件的写与读和Lzo压缩文件的写与读。 ———————————————— 版权声明:本文为CSDN博主「一瓢一瓢的饮 alanchan」的原创文章,遵循CC 4.0 BY-SA版权...
Lzo 压缩算法 Lzo压缩 vs2005 例子Lzo 压缩算法 Lzo压缩 vs2005 例子Lzo 压缩算法 Lzo压缩 vs2005 例子Lzo 压缩算法 Lzo压缩 vs2005 例子
lzo压缩算法 例子 可运行 可查看 很方便 文件是网上下的
lzo压缩算法源码,比较全面!!
go-lzop - 生成LZOP文件兼容LZO压缩库
java版的lzo算法库,用于实现内存、图像、磁盘文件等数据的压缩,是一种非常快的压缩算法。
Lzo压缩、解压缩安装包。包括Lzo,Lzop,hadoop-lzo的安装包。在Linux,AIX亲测可用。
本文通过对多种压缩算法作进一步研究对比后发现,LZO压缩算法是一种被称为实时无损压缩的算法,LZO压缩算法在保证实时压缩速率的优点的同时提供适中的压缩率。如图1(A)给出了Linux操作系统下常见开源压缩算法的压缩...
LZO 压缩算法 纯pascal 语言 压缩速度应该很不错
lzo压缩算法,windows 32位。lzop is a file compressor which is very similar to gzip. lzop uses the LZO data compression library for compression services, and its main advantages over gzip are much ...
该库包含 用纯 Java 编写的LZ4、 Zstandard (Zstd)、 Snappy和 LZO的实现。它们通常比本地库的 JNI 包装器快 10-40%。 Hadoop 压缩编解码器 除了原始块编码器之外,每个算法都有 Hadoop CompressionCodec 的实现。...
本文通过对多种压缩算法作进一步研究对比后发现,LZO压缩算法是一种被称为实时无损压缩的算法,LZO压缩算法在保证实时压缩速率的优点的同时提供适中的压缩率。如图1(A)给出了Linux操作系统下常见开源压缩算法的压缩...
LZO是致力于解压速度的一种数据压缩算法,LZO是Lempel-Ziv-Oberhumer的缩写。这个算法是无损算法,参考实现程序是线程安全的。 LZO库实现了许多有下述特点的算法: • 解压简单,速度非常快。 • 解压不需要内存。 ...
配置hadoop支持LZO和snappy压缩
图形图像压缩资料(LZO+LZSS+LZW) 有代码 有例子 有文档 !无损压缩算法C、C++源代码,好资料,共享下!
前面传的出现解包不全的现象,现在这个经过测试 工作是正常的 , 支持64位编译器
STM32移植 MINI LZO2.09压缩算法 编译通过 可以直接烧录运行 使用STM32F103VET6
java用于解压缩lzo文件的jar包
(5)、允许在压缩部分以损失压缩速度为代价提高压缩率,解压速度不会降低。 (6)、包括生成预先压缩数据的压缩级别,这样可以得到相当有竞争力的压缩比。 (7)、另外还有一个只需要8 kB内存的压缩级别。 ...