gpt4 book ai didi

ios - 解析 Django 创建的 JSON

转载 作者:行者123 更新时间:2023-11-28 22:40:51 24 4
gpt4 key购买 nike

我知道已经有很多关于此的 SO 主题,但它们似乎都过时了。

即:SBJSON parsing issue with Twitter's GET trends/:woeidJSONValue ARC issue

但是,我的 JSON 响应有点不同。

这是原始字符串(从 Django 后端创建):

 [
{"user": "[
{\"id\": \"48\"},
{\"email_address\": null},
{\"password\": \"f41fd61838bc65d6b2c656d488e33aba\"},
{\"salt\": \"24\"},
{\"date_created\": \"2013-01-27 07:59:26.722311+00:00\"},
{\"date_modified\": \"2013-01-27 07:59:26.722357+00:00\"},
{\"is_deleted\": \"False\"}
]"
}
]

阻止我使用 SBJson 和它的 SBJSonParser 和/或 Apple NSJSONSeriliazatoin 类 + 方法的是 "user": 之后和第二个 [(以及它在倒数第二个 ] 之后的引用表亲)。

在将 NSMutableString 转换为 JSON 对象时,这些引号混淆了上述两种解决方案。

在删除有问题的引号和/或有效处理它们的 JSON 解析库方面有什么建议/解决方案吗?

NSScanner 和一些 NSMutableString 类方法,但我没有想到特别明显的东西。

寻找一个简单新颖的解决方案。

最佳答案

正如其他人所说,那不是有效的 JSON。在后端修复它是最好的解决方案,但如果你不能 - 这应该适合你:

NSString *dJangoString = @"[{\"user\":  \"[{\"id\": \"48\"},{\"email_address\": null},{\"password\":\"f41fd61838bc65d6b2c656d488e33ab\"},{\"salt\": \"24\"},{\"date_created\": \"2013-01-27 07:59:26.722311+00:00\"},{\"date_modified\": \"2013-01-27 07:59:26.722357+00:00\"},{\"is_deleted\": \"False\"}]\"}]\"";

dJangoString = [dJangoString stringByReplacingOccurrencesOfString:@"\"[" withString:@"["];
dJangoString = [dJangoString stringByReplacingOccurrencesOfString:@"]\"" withString:@"]"];

NSData* dJangoData = [dJangoString dataUsingEncoding:NSUTF8StringEncoding];
NSError *error = nil;
id retObj = [NSJSONSerialization JSONObjectWithData:dJangoData options:0 error:&error];

NSLog(@"retObj = %@", [retObj description]);

关于ios - 解析 Django 创建的 JSON,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14545633/

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