`
yugouai
  • 浏览: 492385 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

字符串通过gzip压缩到base64编码

    博客分类:
  • java
 
阅读更多

方法如下:

有两种实现,一种利用原生Java API,另外使用Apache common---->IOUtils

//测试通过gz压缩->base64编码后字符串
String queryString = "I am still alive";
ByteArrayOutputStream bos = new ByteArrayOutputStream();
Base64OutputStream b64os = new Base64OutputStream(bos);
GZIPOutputStream gout = new GZIPOutputStream(b64os);
gout.write(queryString.getBytes("UTF-8"));
gout.close();
b64os.close();

byte b1[] = bos.toByteArray();

System.out.println("Encode:" + new String(b1));

//		String s1 = null;
InputStream bais = new ByteArrayInputStream(b1);
Base64InputStream b64io = new Base64InputStream(bais);
GZIPInputStream gin = new GZIPInputStream(b64io);
//toString 方法建议制定编码,否则采用系统默认编码,出现中文编码错误的问题
System.out.println(IOUtils.toString(gin,"UTF-8"));

//		ByteArrayOutputStream baos = new  ByteArrayOutputStream();
//	
//		int numBytesRead = 0;
//        byte [] tempBytes = new byte[6000];
//        while ((numBytesRead = gin.read(tempBytes, 0, tempBytes.length)) != -1)
//        {
//            baos.write(tempBytes, 0, numBytesRead);
//        }
//
//        s1 = new String(baos.toByteArray());
//        s1= baos.toString();
//        System.out.println(s1);

 

 利用IOUtils能完成更多操作,不必要封装多层IO

 

分享到:
评论

相关推荐

    json数据base64编码压缩+解压解码(java以及js)

    java端:返回类型非字符接口调用StringUtils#base64AndCompressJson进行编码压缩 ,返回类型为字符接口调用StringUtils#base64Andcompress js 端:引入压缩包中的js文件 ,调用deBase64AndUncompress进行解压解码

    字节编码实用程序:用于编码/解码 Base64 字符串和 GZIP 字节的 Matlab 实用程序。-matlab开发

    * Base64 编码* ZLIB 压缩* GZIP压缩* 图像压缩(需要图像处理工具箱) 该包在内部使用 JAVA 函数。 必须在 Matlab 中启用 JAVA。 用法----- ### Base64 编码 使用 `base64encode` 和 `base64decode` 进行编码/...

    svg-url-loader:一个Webpack加载器,将SVG文件作为utf-8编码的DataUrl字符串加载

    浏览器解析utf-8编码的字符串的速度比其base64等效字符串的解析速度更快。支持的参数可以在url中或从webpack配置文件中传递参数。 见的WebPack文档中的部分获取更多细节。 还支持使用resourceQuery传递参数: . ...

    WEB前端助手(FeHelper)_v6.2.crx

    包括Unicode编码和解码、UTF-8字符串编码和解码、Base64字符串编解码、字符串MD5编码,前端非常实用的工具 图片Base64编码 对图片文件进行base64编码,直接拷贝datauri格式的数据 二维码生成器 能对网址、普通文本...

    helper.rar

    包括Unicode编码和解码、UTF-8字符串编码和解码、Base64字符串编解码、字符串MD5编码,前端非常实用的工具 图片Base64编码 对图片文件进行base64编码,直接拷贝datauri格式的数据 二维码生成器 能对网址、普通文本...

    VB ASP MD5 SHA HMAC AES GZIP BASE64 微信公众号EncodingAESKey 十全大补DLL

    3.7 字节和字符串相互转换 ------------------------------------------------------------------------------- Byte2String(dataByte, [ChatSet As String]) As String String2Byte(dataStr As String, [ChatSet As...

    matlab分时代码-zmat:ZMat:用于zlib/gzip/lzma/lz4/lz4hc数据压缩的便携式C库和MATLAB工具箱

    lz4hc的数据压缩/解压缩以及在MATLAB和Linux中对base64编码/解码的支持。 GNU八度。 它快速而紧凑,可以在几分之一秒内处理大型阵列。 在6种受支持的压缩方法中,lz4是压缩/解压缩最快的方法。 lzma最慢,但压缩率...

    淘宝200元买的pbfunc1.5.5.9

    pbfunc外部函数扩展是专给PowerBuilder各个版本可以使用的外部扩展库,...8.URI编码解码,Base64编码解码,文件Base64编码 9.图片格式转换,图片旋转 10.gzip的压缩与解压缩 11.FTP操作 12. HTTP的POST、Get、PUT等功能

    pbfunc外部函数扩展(1.6.1.3) 2020-04-06

    pbfunc外部函数扩展是专给PowerBuilder各个版本可以使用的外部扩展...8.URI编码解码,Base64编码解码,文件Base64编码 9.图片格式转换,图片旋转 10.gzip的压缩与解压缩 11.FTP操作 12. HTTP的POST、Get、PUT等功能

    pbfunc外部函数扩展(1.5.1.24) 2018-02-12

    8.Base64编码解码,文件Base64编码 9.硬盘序列号、网卡物理地址 10.http、https的POST、GET、PUT操作 11.json解析 12.图片格式转换,图片旋转 13.支付宝支付 14.gzip的压缩与解压缩 15.下载文件带进度条 16....

    tmxgo:用于 Go 的 TMX 地图解析器

    tmxgo 用于 Go 的 TMX 地图解析器。 可以解析创建的地图文件 ...Base64 编码的瓦片 未编码的图块元素 将地图序列化回字符串(用于编辑 + 保存) 去做: 支持CSV编码。 完整规范的单元测试。 文档

    C#编程经验技巧宝典

    79 <br>0115 如何判断是否为数字 79 <br>0116 如何在字符串中查找指定字符 79 <br>0117 如何在字符串中用一子串替换另一子串 80 <br>0118 将新字符串添加到已有字符串中 80 <br>0119 如何在...

Global site tag (gtag.js) - Google Analytics