Java 字符串压缩ZIP GZIP

来源:互联网 发布:中国数据网站 编辑:程序博客网 时间:2024/06/02 07:13

不废话 直接上代码

import java.io.ByteArrayInputStream;import java.io.ByteArrayOutputStream;import java.io.IOException;import java.util.zip.GZIPInputStream;import java.util.zip.GZIPOutputStream;//将一个字符串按照zip方式压缩和解压缩public class ZipStr {// 压缩public static String compress(String str) throws IOException {if (str == null || str.length() == 0) {return str;}ByteArrayOutputStream out = new ByteArrayOutputStream();GZIPOutputStream gzip = new GZIPOutputStream(out);gzip.write(str.getBytes());gzip.close();return out.toString("ISO-8859-1");}// 解压缩public static String uncompress(String str) throws IOException {if (str == null || str.length() == 0) {return str;}ByteArrayOutputStream out = new ByteArrayOutputStream();ByteArrayInputStream in = new ByteArrayInputStream(str.getBytes("ISO-8859-1"));GZIPInputStream gunzip = new GZIPInputStream(in);byte[] buffer = new byte[256];int n;while ((n = gunzip.read(buffer)) >= 0) {out.write(buffer, 0, n);}// toString()使用平台默认编码,也可以显式的指定如toString("GBK")return out.toString();}}


原创粉丝点击