不要使用SBJSON(json-framework)

转载 2015年07月10日 10:27:21

不知道为什么,在iOS开发中,有很多人使用 SBJSON (又被称作json-framework)来做JSON解析库。我想这是因为SBJSON是最早在iOS上出现的JSON解析库。但是随着iOS开发的流行,越来越多优秀的JSON解析库也涌现出来, SBJSON和它们相比,性能上有很大的差距。

现在iOS行业内主要流行的JSON解析库有:NSJSONSerializationApple JSONTouchJSONSBJSONYAJLJSONKit

行业内许多同行都对这些库进行过benchmark测试。我在网上搜到的测试文章包括:

下图是我从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即可。附上一段使用示例:

1
2
3
4
5
6
#import "JSONKit.h"

NSString *path = [[NSBundle mainBundle] pathForResource:@"data" ofType:@"json"];
NSData *content = [NSData dataWithContentsOfFile:path];
NSDictionary *kitData = [content objectFromJSONData];
NSString *kitString = [kitData JSONString];

祝大家玩得开心。

IOS中Json解析的四种方法,推荐使用原生解析,和jsonKit

IOS中Json解析的四种方法 作为一种轻量级的数据交换格式,json正在逐步取代xml,成为网络数据的通用格式。 有的json代码格式比较混乱,可以使用此“http://www.bejs...
  • wisdom605768292
  • wisdom605768292
  • 2016年04月12日 10:02
  • 2366

iOS之SBJson的使用

转载自:http://www.cnblogs.com/xiaodao/category/355229.html JSON(JavaScript Object Notation) 是一种轻量级的数据交...
  • yuxikuo_1
  • yuxikuo_1
  • 2015年01月19日 15:57
  • 1649

Robotframework实现Dictionary数据和Json格式数据自由转换

在Robotframework中进行接口协议测试时,需要实现Dictionary数据和Json格式数据自由转换,便于数据构造方便快捷。本文章主要讲解如何实现两者之前的自由转换。 一、首先Diction...
  • Mandy000sunny
  • Mandy000sunny
  • 2016年11月01日 23:08
  • 6575

不要使用SBJSON(json-framework)

不知道为什么,在iOS开发中,有很多人使用 SBJSON (又被称作json-framework)来做JSON解析库。我想这是因为SBJSON是最早在iOS上出现的JSON解析库。但是随着iOS开发的...
  • guolinming007
  • guolinming007
  • 2013年07月28日 22:42
  • 318

xcode4.2.1 中使用 sbjson 的 3.1版本来解析json字符串

1,访问 SBJson的项目官网,并且下载 https://github.com/stig/json-framework/downloads     注意:按照作者的说明, SBJson v3...
  • remote_roamer
  • remote_roamer
  • 2011年11月29日 03:03
  • 10437

ios 中使用SBJson拼接和解析json

m 1.ios解析json 使用开源json包,项目地址:      http://stig.github.com/json-framework/ NSData * res...
  • m372897500
  • m372897500
  • 2015年09月11日 17:33
  • 1167

json的用法 SBJson的用法 IOS开发 iphone开发

json 的用法 json简介 JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。它基于JavaScript(Standard ECMA-262 3rd...
  • tangshoulin
  • tangshoulin
  • 2012年05月28日 17:55
  • 7361

Parsing JSON With SBJSON

转自: http://jasarien.com/?p=428 So the previous post focussed on retrieving data from a ...
  • workhardupc100
  • workhardupc100
  • 2011年09月19日 09:05
  • 714

ios下json数据解析的SBJson 库

  • 2013年04月06日 16:44
  • 53KB
  • 下载

SBJSON包的JSON解析

  • 2013年12月26日 11:44
  • 28KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:不要使用SBJSON(json-framework)
举报原因:
原因补充:

(最多只允许输入30个字)