从NSString NSJSONSerialization

是否有可能,如果我有一个NSString,我想使用NSJSONSerialization? 我该怎么做呢?

首先,您需要通过执行以下操作将您的NSString转换为NSData

 NSData *data = [stringData dataUsingEncoding:NSUTF8StringEncoding]; 

那么只需使用JSONObjectWithData方法将其转换为JSON即可

 id json = [NSJSONSerialization JSONObjectWithData:data options:0 error:nil]; 

您需要将您的NSString转换为NSData ,那么您可以使用+[NSJSONSerialization JSONObjectWithData:options:error:]方法。

 NSString * jsonString = YOUR_STRING; NSData * data = [jsonString dataUsingEncoding:NSUTF8StringEncoding]; NSError * error = nil; id json = [NSJSONSerialization JSONObjectWithData:data options:0 error:&error]; if (!json) { // handle error } 

您可以通过说:你的string转换为NSData

 NSData *data = [string dataUsingEncoding:NSUTF8StringEncoding]; 

你可以使用它与NSJSONSerialization 。 但是请注意, NSJSONSerialization只是iOS5,所以你最好使用像TouchJSON或JSONKit这样的库,它们都可以直接使用string,节省了转换为NSData的步骤。

我写了一篇博客文章,演示如何将本机iOS JSON类与通用协议一起使用,并使用本机iOS JSON类的实现。

这种方法使得使用本地function变得更容易,并减less了你必须编写的代码量。 此外,如果本机实现不足,则使用JSONKit实现本地实现变得更容易。

http://danielsaidi.com/blog/2012/07/04/json-in-ios

博客文章包含您需要的所有代码。 只需复制/粘贴:)

希望能帮助到你!