• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

Java Decoder类代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了Java中lzma.sdk.lzma.Decoder的典型用法代码示例。如果您正苦于以下问题:Java Decoder类的具体用法?Java Decoder怎么用?Java Decoder使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。



Decoder类属于lzma.sdk.lzma包,在下文中一共展示了Decoder类的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Java代码示例。

示例1: uncompress

import lzma.sdk.lzma.Decoder; //导入依赖的package包/类
/**
 * The compressed file extractor method that takes a compressed file and a destination folder
 * and extracts the given file according to its compression format. The supported formats are declared
 * in the formats class.
 * @param file the compressed file to be extracted
 * @param destinationFolder the folder to which the extracted file will be moved to
 */
public void uncompress(File file, File destinationFolder) {
	String name = file.getName();
	try {
		if (name.endsWith(".zip")) {
			ZipUncompressor.extract(file, destinationFolder);
		} else if (name.endsWith(".tar.gz") || name.endsWith(".tgz")) {
			TarUncompressor.extract(file, new GZIPInputStream(new FileInputStream(file)), destinationFolder);
		} else if (name.endsWith(".tar.bz2") || name.endsWith(".tar.bzip2") || name.endsWith(".tbz2")) {
			TarUncompressor.extract(file, new BZip2CompressorInputStream(new FileInputStream(file)), destinationFolder);
		} else if (name.endsWith(".tar.lzma") || name.endsWith(".tlzma")) {
			TarUncompressor.extract(file, new LzmaInputStream(new FileInputStream(file), new Decoder()), destinationFolder);
		} else if (name.endsWith(".rar")) {
			RarUncompressor.extract(file, destinationFolder);
		} else if (name.endsWith(".tar")) {
			TarUncompressor.extract(file, new FileInputStream(file), destinationFolder);
		} 
	} catch (IOException e) {
		e.printStackTrace();
		throw new GroundhogException("Error when trying to extract the source code", e);
	}
}
 
开发者ID:spgroup,项目名称:groundhog,代码行数:29,代码来源:DefaultUncompressor.java


示例2: decompress

import lzma.sdk.lzma.Decoder; //导入依赖的package包/类
public static byte[] decompress(byte[] compressedBytes) throws IOException {
    InputStream in = new ByteArrayInputStream(compressedBytes);
    ByteArrayOutputStream out = new ByteArrayOutputStream();

    int propertiesSize = 5;
    byte[] properties = new byte[propertiesSize];
    if (in.read(properties, 0, propertiesSize) != propertiesSize) {
        throw new IOException("LZMA-input is too short.");
    }

    Decoder decoder = new Decoder();
    if (!decoder.setDecoderProperties(properties)) {
        throw new IOException("Incorrect stream properties.");
    }

    long outSize = 0;
    for (int i = 0; i < 8; i++) {
        int v = in.read();
        if (v < 0) {
            throw new IOException("Can't read stream size.");
        }
        //noinspection IntegerMultiplicationImplicitCastToLong
        outSize |= (long) v << (8 * i);
    }

    if (!decoder.code(in, out, outSize)) {
        throw new IOException("Error in data stream.");
    }

    in.close();

    return out.toByteArray();
}
 
开发者ID:Codeforces,项目名称:codeforces-commons,代码行数:34,代码来源:LzmaUtil.java



注:本文中的lzma.sdk.lzma.Decoder类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Java IntOperator类代码示例发布时间:2022-05-22
下一篇:
Java InliningMode类代码示例发布时间:2022-05-22
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap