六狼论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博账号登陆

只需一步,快速开始

搜索
查看: 713|回复: 0

JSON解析新办法:JSEL

[复制链接]

升级  17.33%

18

主题

18

主题

18

主题

秀才

Rank: 2

积分
76
 楼主| 发表于 2013-1-29 13:56:40 | 显示全部楼层 |阅读模式
JSON解析和系列化功能,JSON官方网站是提供了官方的Java实现的(org.json)。

但是,官方的实现并不理想。
不仅接口复杂的要命。而且效率也不理想,基本可以判定是一个不合格产品。

另外一个我比较喜欢的解析器,叫做StringTree。
这个解析器最大的特点就是简单,JSONReader负责解析,JSONWriter负责序列化,成员方法也简单明了。
他的输出格式除原始类型外,返回的Map,和List,充分利用了Java 集合框架。比起官方实现来,干净了很多。

StringTree不仅简单易用,而且性能也非常不错。
根据我的测试结果,StringTree最好。大概是JSEL的两倍。
而官方版本最差,大概只有是JSEL一半。等比数列了,JSEL居中。

不过StringTree有一个bug,如果代码里面有注释,经常出现死循环。


再说JSEL
与专门的JSON解析相比,JSEL不仅可以解析标准的JSON数据,他还可以处理(忽略)JSON中插入的注释。甚至能处理一些简单的表达式计算,接口简单,性能也还不错。
如:
{    "time":24*60*60*1000*365*(2008-1981),    "data":[1,2,3,4,5],     key:123}

关于JSEL的更多的信息可参看如下连接:
详细介绍:http://code.google.com/p/lite/wiki/JSEL
详细介绍:http://code.google.com/p/lite/downloads/list
您需要登录后才可以回帖 登录 | 立即注册 新浪微博账号登陆

本版积分规则

快速回复 返回顶部 返回列表