GZIP紧缩JSON,JSON紧缩

soゝso 2016-08-29 22:55:09 18973

这个是我之前在网上找的,然则一向在应用。JSON紧缩可以应用,字符串紧缩也能够应用。

直接上代码。

package snippet;

import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.util.zip.GZIPInputStream;
import java.util.zip.GZIPOutputStream;
/**
 * 
 * 开辟公司:sojson.com<br/>
 * 版权:sojson.com<br/>
 * <p>
 * 
 * 字符串紧缩
 * 
 * <p>
 * 
 * 辨别 义务人 日期    解释<br/>
 * 创建 周柏成 2015年12月19日  <br/>
 * <p>
 * *******
 * <p>
 * @author zhou-baicheng
 * @email  json@sojson.com
 * @version 1.0,2015年12月19日 <br/>
 * 
 */
public class GZIP {

	/**
 * 字符串的紧缩
 * 
 * @param str
 *            待紧缩的字符串
 * @return 前往紧缩后的字符串
 * @throws IOException
 */
public static String compress(String str) throws IOException {
	if (null == str || str.length() <= 0) {
		return str;
	}
	// 创建一个新的 byte 数组输入流
	ByteArrayOutputStream out = new ByteArrayOutputStream();
	// 应用默许缓冲区大年夜小创建新的输入流
	GZIPOutputStream gzip = new GZIPOutputStream(out);
	// 将 b.length 个字节写入此输入流
	gzip.write(str.getBytes());
	gzip.close();
	// 应用指定的 charsetName,经过过程解码字节将缓冲区内容转换为字符串
	return out.toString("UTF-8");
}

/**
 * 字符串的解压
 * 
 * @param str
 *            对字符串解压
 * @return 前往解紧缩后的字符串
 * @throws IOException
 */
public static String unCompress(String str) throws IOException {
	if (null == str || str.length() <= 0) {
		return str;
	}
	// 创建一个新的 byte 数组输入流
	ByteArrayOutputStream out = new ByteArrayOutputStream();
	// 创建一个 ByteArrayInputStream,应用 buf 作为其缓冲区数组
	ByteArrayInputStream in = new ByteArrayInputStream(str
			.getBytes("UTF-8"));
	// 应用默许缓冲区大年夜小创建新的输入流
	GZIPInputStream gzip = new GZIPInputStream(in);
	byte[] buffer = new byte[256];
	int n = 0;
	while ((n = gzip.read(buffer)) >= 0) {// 将未紧缩数据读入字节数组
		// 将指定 byte 数组中从偏移量 off 开真个 len 个字节写入此 byte数组输入流
		out.write(buffer, 0, n);
	}
	// 应用指定的 charsetName,经过过程解码字节将缓冲区内容转换为字符串
	return out.toString("UTF-8");
	}

}


版权所属:SO JSON在线解析

原文地址:http://exergyanc.com/blog/21.html

转载时必须以链接情势注明原始出处及本声明。

本文主题:

假设本文对你有赞助,那么请你赞助我,让我更有豪情的写下去,赞助更多的人。

关于作者
一个低调而闷骚的汉子。
相干文章
JSON紧缩算法 JSON.hpack ,JSON紧缩完成
Freemarker 教程,Freemarker 紧缩HTML成一行
Javascript 加密/紧缩后运转不了,JavaScript报错排查讲解
CSS简单紧缩小对象、不错,推荐下。
又拍云24小光阴记下载办法,日记归并,.gz 紧缩包多个归并办法
Mysql5.6下载装置,Mysql5.7下载装置 ,Windows64位,绿色装置(解紧缩装置)图文装置教程
谈谈此次对 SOJSON 的改版
city.json
cpu资本收集.json
SQL Server 对JSON的支撑
最新文章
应用七牛云存储完成图片API,主动删除图片筹划合集 1005
神速ICP立案经历分享,ICP立案居然一天就经过过程了 2138
百度加强推送URL链接,百度SEO强行推送链接JavaScript代码案例讲解。 2867
SOJSON 拓展办事器被DDos进击了一早晨,是若何处理的? 3177
湖南地区立案“新增网站需提交组网筹划或解释解释”,关于立案做简单论述 3226
企查查你是个甚么企业,骗子的帮凶,欺骗的集中营,经过过程企查查骚扰企业德律风赓续,为所欲为的企查查 9493
Java爬取百度云不雅测对网站的检测数据,获得子域名及域名的安然信息 2503
【2020年】百度搜刮词获得,获得百度搜刮的关键词【真实有效】 6825
Nodejs情况装置,Nodejs情况装置一篇就够了 1778
iOS版淘宝翻开提示“您应用的法式榜样是内测版本,将于2020-03-28到期,到期将没法应用,请尽快下载最新版本” 2480
最热文章
苹果电脑Mac怎样恢复出厂体系?苹果体系怎样重装体系? 430432
我为甚么要选择RabbitMQ ,RabbitMQ简介,各类MQ选型比较 416974
收费气象API,全国气象 JSON API接口,可以获得五天的气象预告 350123
最新MyEclipse8.5注册码,有效期到2020年 (曾经更新) 309427
收费气象API,气象JSON API,不限次数获得十五天的气象预告 286008
Elasticsearch教程(四) elasticsearch head 插件装置和应用 220175
Jackson 时间格局化,时间注解 @JsonFormat 用法、时差成绩解释 175288
谈谈斐讯路由器劫持,你用斐讯路由器,你须要知道的任务 135878
Elasticsearch教程(一),全程直播(小白级别) 119018
Elasticsearch教程(五) elasticsearch Mapping的创建 98636

骚码参加我们 / 千人QQ群:259217951

入群须要5元为的是没有渣滓告白,假设没有QQ钱包,可以加群主拉进。

二维码生成 来自 >> 二维码生成器

付出扫码

一切赞助/开支都讲地下通细,用于网站保护:赞助名单检查

检查我的收藏

正在加载... ...