android java gz 解压_android与服务端通讯时使用到的GZIP压缩及解压

importjava.io.ByteArrayInputStream;importjava.io.ByteArrayOutputStream;importjava.io.IOException;importjava.nio.ByteBuffer;importjava.util.zip.GZIPInputStream;importjava.util.zip.GZIPOutputStream;importorg.kobjects.base64.Base64;/***@authorJinqi 2014/1/27

* GZIP压缩和解压缩的操作类

**/

public classGzipHelper {/**GZIP压缩

*@paramstr 要压缩的字符串

*@returnGZIP压缩后的字符串

*@throwsIOException*/

public static String compress(String str) throwsIOException {byte[] blockcopy =ByteBuffer

.allocate(4)

.order(java.nio.ByteOrder.LITTLE_ENDIAN)

.putInt(str.length())

.array();

ByteArrayOutputStream os= newByteArrayOutputStream(str.length());

GZIPOutputStream gos= newGZIPOutputStream(os);

gos.write(str.getBytes());

gos.close();

os.close();byte[] compressed = new byte[4 +os.toByteArray().length];

System.arraycopy(blockcopy,0, compressed, 0, 4);

System.arraycopy(os.toByteArray(),0, compressed, 4,

os.toByteArray().length);returnBase64.encode(compressed);

}/**GZIP解压缩

*@paramzipText GZIP压缩过的字符串

*@return解压后的字符串

*@throwsIOException*/

public static String decompress(String zipText) throwsIOException {byte[] compressed =Base64.decode(zipText);if (compressed.length > 4)

{

GZIPInputStream gzipInputStream= newGZIPInputStream(new ByteArrayInputStream(compressed, 4,

compressed.length- 4));

ByteArrayOutputStream baos= newByteArrayOutputStream();for (int value = 0; value != -1;) {

value=gzipInputStream.read();if (value != -1) {

baos.write(value);

}

}

gzipInputStream.close();

baos.close();

String sReturn= new String(baos.toByteArray(), "UTF-8");returnsReturn;

}else{return "";

}

}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Winrar for Android 中文版。这是一款基于安卓平台手机端的解压缩工具。 Winrar for Android 中文版 Winrar for Android 是来自 RARLAB 的官方版本,是 PC 端 winrar 的姐妹,支持创建RAR和ZIP压缩文件,能够轻松解压 RAR, RAR5, ZIP, TAR, GZ, BZ2, XZ, 7z, ISO, ARJ 等格式的文件,是手机端不可多得的神器! Winrar for Android 中文版主要功能: – 支持创建RAR和ZIP压缩文件以及解压RAR, RAR5, ZIP, TAR, GZ, BZ2, XZ, 7z, ISO, ARJ等格式的文件 – 支持修复 ZIP和RAR 压缩文件,支持进行基准测试(基准测试能够测试数据处理的速度,检查错误等) – 基准测试与WinRAR兼容,请使用相同的版本在不同的设备之间进行数据测试比较,不同版本数据会相差很大 – 支持恢复记录,恢复卷,固实压缩,多核压缩,设置加密,设置配置文件,设置默认配置,重新组织配置文件 – 支持压缩后删除源文件,设置压缩文件名称,可选:标准,最快,较快,较好,最好等压缩方式,自定义字典大小 – 可设置分卷压缩文件大小,以及恢复分卷数量,支持创建每个压缩卷后自动暂停,支持显示压缩间,显示名称 – 支持设置压缩文件名称掩码,创建压缩文件附加当前日期字符串压缩文件名,常用于每日备份. – 内置帮助内容,可自行阅读。支持删除压缩文件中的文件,支持创建单独压缩,自定义解压目录等 – 支持长间操作后发出哔声提醒,自定义启动文件夹,可按照习惯排序文件夹,设置压缩文件优先

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值