如何在iOS App中解析JSON

man*_*urt 7 arrays string parsing json ios

我以字符串的形式从twitter获得回复,

我需要的是发送注释到数组的部分,

这里是一个字符串的例子

[{"geo":null,"coordinates":null,"retweeted":false,... 
"text":"@KristinaKlp saluditos y besos d colores!"},{"geo":null,"coordinates...
Run Code Online (Sandbox Code Playgroud)

所以我真正需要的是"文字"之后的帖子:"=

@KristinaKlp saluditos y besos d colores!

那么,我怎样才能获取字符串并解析它,以便有希望得到数组中的所有消息?

非常感谢!

Sam*_*Sam 10

我没有在iOS应用程序中自己进行JSON解析,但您应该能够使用像json-framework这样的库.这个库将允许您轻松解析JSON并从字典/数组生成json(这实际上是所有JSON的组成).

SBJson文档:

JSON以下列方式映射到Objective-C类型:

  • null - > NSNull
  • string - > NSString
  • array - > NSMutableArray
  • object - > NSMutableDictionary
  • true - > NSNumber的-numberWithBool:是的
  • false - > NSNumber的-numberWithBool:NO
  • 最多19位的整数 - > NSNumber的-numberWithLongLong:
  • 所有其他数字 - > NSDecimalNumber

由于Objective-C没有布尔值的专用类,因此这些类转换为NSNumber实例.但是,由于这些是使用-initWithBool:方法初始化的,因此它们可以正确地往返JSON.换句话说,他们不会默默地突然变成0或1; 他们将再次表现为"真实"和"虚假".

作为一个优化整数,长度最多为19位(有符号长整数的最大长度)转为NSNumber实例,而复数转换为NSDecimalNumber实例.因此,我们可以避免任何精度损失,因为JSON允许可笑的大数字.

@page objc2json Objective-C到JSON

Objective-C类型以下列方式映射到JSON类型:

  • NSNull - > null
  • NSString - >字符串
  • NSArray - >数组
  • NSDictionary - >对象
  • NSNumber的-initWithBool:是 - > true
  • NSNumber的-initWithBool:NO - > false
  • NSNumber - >数字

@note在JSON中,对象的键必须是字符串.NSDictionary键不一定是,但尝试将带有非字符串键的NSDictionary转换为JSON将引发异常.

使用-numberWithBool:方法创建的NSNumber实例将转换为JSON布尔"true"和"false"值,反之亦然.任何其他NSNumber实例都会以您期望的方式转换为JSON编号.

教程

有没有教程?是! 这些都是第三方人提供的教程:

适用于iPhone的JSON框架 - 由John Muchow三部分组成的Flickr教程.iPhone上的JSON Over HTTP - 作者:Dan Grigsby.AS3到Cocoa touch:Andy Jacobs的JSON.

您还可以查看其他库,如TouchJSON,JSONKit,Yet Another JSON Library