iphone - 如何使用带有 NSJSONSerialization 类引用的 xcode 4.3.1 从 URL 获取数据

标签 iphone ios json xcode4.3 nsjsonserialization

我正在努力了解 NSJSONSerialization Class Reference 。由于 developer.apple.com 网站上没有代码示例,我迷路了。 网络上有数以百万计的其他 json 库示例,但我无法让它们中的任何一个与最新版本的 xcode 一起使用。 (我正在运行:版本 4.3.1 (4E1019) 并在 iPhone 5.0.1 上进行测试)

我想使用一个按钮将 json 文件中的数据提取到我的 iPhone 中。

假设我从 URL 获取数据: http://companyurl/jsonfile.json(标准 JSON 格式)

jsonfile.json 看起来像这样……;

{
  "companylist":   
[
      {
        "company":"Companyname 1",
        "telephone":"1234567890",
        "url":"http:\/\/www.companyname1.com\/",
        "category":"category 1",
        "position":"1",
      },
      {
        "company":"Companyname 2",
        "telephone":"2345678901",
        "url":"http:\/\/www.companyname2.com\/",
        "category":"category 2",
        "position":"2",
      },
      {
        "company":"Companyname 3",
        "telephone":"3456789012",
        "url":"http:\/\/www.companyname3.com\/",
        "category":"category 3",
        "position":"3",
      }
]
}

我在 .h 和 .m 文件中应该写什么?

感谢您的帮助! :)

最佳答案

NSData *data=[NSData dataWithContentsOfURL:[NSURL URLWithString:@"http://your_web_server/your_file...."]];
NSError *error=nil;
id response=[NSJSONSerialization JSONObjectWithData:data options:
                                NSJSONReadingMutableContainers error:&error]; 

NSLog(@"Your JSON Object: %@ Or Error is: %@", response, error);

注意:此代码目前在 Xcode 4.2 上运行,在模拟器上运行 iOS 5.01,在 iPad 设备上运行 5.1

关于iphone - 如何使用带有 NSJSONSerialization 类引用的 xcode 4.3.1 从 URL 获取数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9753229/

相关文章:

ios - Xcode 6 设备特定的 Assets 目录

c# - 如何反序列化 Json 对象 - C#

javascript - 解码 JSON HTML 数据以在 AngularJs 中显示

iphone - 如何在 iPhone 3G 上调整大图像的大小而不导致应用程序崩溃?

iPhone 应用程序状态 "Upload Received"持续 6 天(144 小时)

ios - 我现有的 TableViewController 在 Xcode 11 beta1 上崩溃

java - JSON 到 Java 的转换以及使用 DAO 的映射

iphone - iPad 模拟器不接收 iPhone 的 320x480 帧之外的触摸事件

ios - 拒绝状态为 "Waiting For Review"的 iPhone 应用程序的二进制文件会导致什么情况?

iOS Airprint 不使用打印机选择界面