`
java-mans
  • 浏览: 11413859 次
文章分类
社区版块
存档分类
最新评论

说说 SBJSON 那些事

 
阅读更多

在IOS开发中,不时的会遇到JSON格式的文件需要我们处理,难免我们这些码农们寻找简单快捷的JSON解析类库也帮我们,可是哪个类库能够真正的高效、准确、合理的帮我们解决我们的问题呢?在开发中,看到很多码农们都喜欢使用SBJSON,承认SBJSON确实是不错的解析类库,可是是不是是最快捷、高效的呢?不免有些怀疑,因此在爬文的时候找到了一些文章,来帮助我们了解JSON类库的种种。
SBJSON可以说是最早在IOS上出现的第三方JSON解析类库,几乎没有那个开发者没有接触过,也许是因为使用的人多了,大家都熟悉了这个类库,因此对于其他的第三方类库没了兴趣。但是随着IOS的发展,现今IOS5出现了,IOS6也来了,许多优秀的JSON解析类库也出现了,相对于SBJSON来说,性能更加的优越了。
现在来说,IOS行业里主要的,也是比较流行的JSON解析类库有:NSJSONSerialization、Apple JSON、TouchJSON、SBJSON、YAJL、JSONKit。
行业里已经有很多人对这些类库进行了bench mark测试。部分测试结果罗列在这里:


下图是ArthurChenJS的博客文章中的一张benchmark测试结果图(横条越短,解析速度越快):

从文章和上图中可以看到,SBJSON在多数测试中都处于倒数的第一或倒数第二的位置。所以说,SBJSON实际上在性能这一点上讲,确实是非常“SB”的,实在不值得大家留念。赶快把你的JSON解析库换成其它的吧!
那么应该换成哪个呢? 如果你的app只支持iOS 5.0以上系统,那么直接用苹果官方提供的JSON库:NSJSONSerialization库即可。 如果你的app要支持iOS 5.0以下的系统,那么我个人推荐JSONKit,不过JSONKit本身做了很多内存上的优化,所以不支持ARC,你在使用时可以对其加上 -fno-objc-arc 的编译标志即可,设置这个编译标志的详细步骤可以见这篇文章
JSONKit的使用也非常方便,在使用上只需要把SBJSON的JSONValue方法换成objectFromJSONData,JSONRepresentation方法换成JSONString即可。附上一段使用示例:
#import "JSONKit.h"
NSString *path = [[NSBundle mainBundle] pathForResource:@"data" ofType:@"json"];
NSData *content = [NSData dataWithContentsOfFile:path];
NSDictionary *kitData = [content objectFromJSONData];
NSString *kitString = [kitData JSONString];
部分内容来自网络,如有不妥之处,请指正!

分享到:
评论

相关推荐

    SBJson解析库

    ios SBJson库解析json文件 解析使用

    ios下json数据解析的SBJson 库

    ios下json数据解析的SBJson 库

    sbjson 资源包

    sbjson 资源包,直接导人即可以使用

    SBJSON包的JSON解析

    SBJSON包,一共有四种json解析的方式,这里只有一种。大家可以看看

    SBjson解析

    SBjson是一款json的解析软件,只许2句话,便可轻松解析

    ios SBJson包

    ios、Mac等开发必不可少的资源包。SBJson

    SBJson第三方解析包

    SBJson 是 Objective-C 实现的一个 JSON 解析器和生成器.支持流, 格式友好的 JSON 输出 输出 JSON 的键是经过排序的 可配置的解析和输出的最大递归深度 纯 Objective-C. 无需第三方包依赖。

    SBjson_Ios第三方解析

    第三方json解析,用于ios解析json字符串。常常用在网络下载的数据解析,使用简单便捷

    SBJSON的工具类

    SBJSON的工具类

    SBJson解析

    SBJson json的解析object c

    SBJson 3.1

    SBJson 3.1 与之前版本的不同是3.1支持ARC 更加适合Xcode 4.2版本及以上版本 在使用的时候将classes文件夹拖入项目,然后在想要使用SBJson的文件中 #import "SBJson.h"即可

    iOS开发第三方类库SBJson.zip

    iOS开发 xcode 网站解析 第三方类库 SBJson

    SBJson:一个简单而简短的json解析器

    SBJson很简单, 幼稚的简短的json解析器。 入门指南 就像古老的中国谚语所说的那样,这是不打印文字的最好方法: 门生发大财! { " foo " : " bar " , " headers " : { " data " : [ 233 , { " readme " : " ...

    JSON解析 SBJson

    JSON解析 SBJson的使用 里面注释很全

    SBJson:此框架在Objective-C中实现了严格的JSON解析器和生成器

    SBJson 5 在Objective-C中基于块的JSON解析和生成。 总览 SBJson的第一大功能是基于流/块的操作。 向解析器提供一个或多个UTF8编码数据块,它将调用您在每个根级文档或数组中提供的一个块。 或者(可选)针对每个根...

    GDataXmlNode以及SBJson文件

    包含GDataXmlNode的两个.h和.m文件还有SBJon,用于解析xml数据和转成NSString字符串

    ios下三种解析json的库 sbjson TouchJson JSONKit

    ios下三种解析json的库 sbjson TouchJson JSONKit 可直接使用

    iOS_SBJson

    SBJson 是 Objective-C 实现的一个 JSON 解析器和生成器,主要特性: 采用 New BSD 开源许可. 易用的 API 设计 支持流,详情请看 API docs 中的 SBJsonStreamParser 格式友好的 JSON 输出 输出 JSON 的键是经过排序...

    SBJSON解析

    一个很常见的第三方类,用于解析。有需要的下吧,同时作为自己的收藏。

    XML.zip_XML 解析_c xml_sbjson x_xml

    在iphone开发中应用xml和json解析的方法。只是介绍入门级别的使用。对于初学者来说是一个良好的开始。

Global site tag (gtag.js) - Google Analytics