当前位置: 首页 > 编程笔记 >

IOS json 解析遇到错误问题解决办法

慕阳伯
2023-03-14
本文向大家介绍IOS json 解析遇到错误问题解决办法,包括了IOS json 解析遇到错误问题解决办法的使用技巧和注意事项,需要的朋友参考一下

概要:

Error Domain=NSCocoaErrorDomain Code=3840 "The operation couldn't be completed. (Cocoa error 3840.)" (Unescaped control character around character 1419.) UserInfo=0x1563cdd0 {NSDebugDescription=Unescaped control character around character 1419.}

之前解析json的时候都是标准格式,json数据当中没有 \n \r \t 等制表符。

今天在解析的时候发现json解析时好时坏,用在线json解析也米有问题。找了半天终于发现是制表符在作怪,由于标准的json解析是不允许有这几个制表符的。所以在收到保温的时候我们需要把这几个制表符给过滤掉。

NSString * responseString = [request responseString];

responseString = [responseString stringByReplacingOccurrencesOfString:@"\r\n" withString:@""];

responseString = [responseString stringByReplacingOccurrencesOfString:@"\n" withString:@""];

responseString = [responseString stringByReplacingOccurrencesOfString:@"\t" withString:@""];

NSLog(@"responseString = %@",responseString);

SBJsonParser *parser = [[[SBJsonParser alloc]init] autorelease];

id returnObject = [parser objectWithString:responseString];

NSDictionary *userInfo = nil;

NSArray *userArr = nil;

if ([returnObject isKindOfClass:[NSDictionary class]]) {

if (userInfo) {

[userArr release];

}

userInfo = (NSDictionary*)returnObject;

}

else if ([returnObject isKindOfClass:[NSArray class]]) {

userArr = (NSArray*)returnObject;

}

NSError* e = nil;



//系统自带的解析方式。

NSDictionary * userInfo = [NSJSONSerialization JSONObjectWithData:[jsonString dataUsingEncoding:NSUTF8StringEncoding] options:NSJSONReadingMutableLeaves error:&e];

if (e) {

NSLog(@"%@",e);

}

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

 类似资料:
  • 本文向大家介绍Android getBackground().setAlpha遇到问题解决办法,包括了Android getBackground().setAlpha遇到问题解决办法的使用技巧和注意事项,需要的朋友参考一下 Android getBackground().setAlpha遇到问题解决办法 前言: 使用getBackground().setAlpha,导致其他布局背景透明度都改变的问

  • 本文向大家介绍Android webview 遇到android.os.FileUriExposedException错误解决办法,包括了Android webview 遇到android.os.FileUriExposedException错误解决办法的使用技巧和注意事项,需要的朋友参考一下 Android webview 遇到android.os.FileUriExposedException

  • 本文向大家介绍启动targetcli时遇到错误解决办法,包括了启动targetcli时遇到错误解决办法的使用技巧和注意事项,需要的朋友参考一下  启动targetcli时遭遇ImportError: cannot import name ALUATargetPortGroup故障 targetcli是一个iSCSI配置管理工具,该工具简单易用,可以直接替换scsi-target-utils。满心欢

  • 本文向大家介绍Nginx 499错误问题及解决办法,包括了Nginx 499错误问题及解决办法的使用技巧和注意事项,需要的朋友参考一下 Nginx简介 Nginx ("engine x") 是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP服务器。Nginx是由Igor Sysoev为俄罗斯访问量第二的Rambler.ru站点开发的,第一个公开版本0.1.0发布于2004

  • 本文向大家介绍详解Python安装tesserocr遇到的各种问题及解决办法,包括了详解Python安装tesserocr遇到的各种问题及解决办法的使用技巧和注意事项,需要的朋友参考一下 Tesseract的安装及配置 在Python爬虫过程中,难免遇到各种各样的验证码问题,最简单的就是​这种验证码了,那么在遇到验证码的时候该怎么办呢?我们就需要OCR技术了,OCR-即Optical Charac

  • 本文向大家介绍Mac下使用charles遇到的问题以及解决办法,包括了Mac下使用charles遇到的问题以及解决办法的使用技巧和注意事项,需要的朋友参考一下 最近使用上了Charles,因为之前一直使用Fidder,所以还是碰到了一些问题,这里记录一下。 如何安装破解版 打开charles后,发现访问但是抓不到包 抓取HTTPS的接口,看response是乱码 一、如何安装破解版 正版有30天试