gpt4 book ai didi

iOS 5 JSON 解析导致 Cocoa 错误 3840

转载 作者:IT老高 更新时间:2023-10-28 12:49:48 25 4
gpt4 key购买 nike

我很难在 iOS 5 上解析以下 JSON 字符串。

{"States": [{"Name": "Arizona","Cities": [{"Name": "Phoenix"}]},{"Name": "California","Cities": [{"Name": "Orange County"},{"Name": "Riverside"},{"Name": "San Diego"},{"Name": "San Francisco"}]},{"Name": "Nevada","Cities": [{"Name": "Las Vegas"}]}]}

这是我的代码:

- (void) parseJson {
NSError *jsonError = nil;
NSData *jsonData = [NSData dataWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"Locations-JSON" ofType:@"rtf"]];

if (jsonData) {
NSDictionary *jsonObjects = [NSJSONSerialization JSONObjectWithData:jsonData options:NSJSONReadingMutableContainers error:&jsonError];

if (jsonError) {
NSLog(@"JSON Error: %@", [jsonError localizedDescription]);

return;
}

NSLog(@"%@", jsonObjects);
}
}

我不断收到此错误:

JSON 错误:操作无法完成。 ( cocoa 错误 3840。)

我很感激这方面的一些帮助,因为我显然无法解决这个问题。

最佳答案

让我觉得不正确的一点是:

[[NSBundle mainBundle] pathForResource:@"Locations-JSON" ofType:@"rtf"]

您的数据是 RTF 文件??它应该是一个 txt 文件(或任何其他类型的纯文本文件)。 RTF 文件通常包含文本格式数据,如下所示:

{\rtf1\ansi\ansicpg1252\cocoartf1138\cocoasubrtf470
{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
{\colortbl;\red255\green255\blue255;}
\margl1440\margr1440\vieww10800\viewh8400\viewkind0
\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\pardirnatural

\f0\fs24 \cf0 \{"States": [\{"Name": "Arizona","Cities": [\{"Name": "Phoenix"\}]\},\{"Name": "California","Cities": [\{"Name": "Orange County"\},\{"Name": "Riverside"\},\{"Name": "San Diego"\},\{"Name": "San Francisco"\}]\},\{"Name": "Nevada","Cities": [\{"Name": "Las Vegas"\}]\}]\}}

当我将 that 作为数据读取并尝试将其解析为 JSON 时,我收到了您所看到的 3840 错误。该错误的描述是:

The data couldn’t be read because it has been corrupted. (No string key for value in object around character 2.)

所以在我看来,您实际上并没有 JSON。您有 RTF 数据。

关于iOS 5 JSON 解析导致 Cocoa 错误 3840,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11174130/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com