Error Domain=NSCocoaErrorDomain Code=3840 "Unable to convert data to string around character 347." UserInfo={NSDebugDescription=Unable to convert data to string around character 347.}
这个问题一般是数据格式非utf8造成的。
解决方法是:先把返回的nsdata数据转为nsstring,然后对string编码,再转回nsdata,然后就可以用json正常解析了。
实现如下:
NSError * error;
NSStringEncoding enc = kCFStringEncodingUTF8;
NSString* strdata = [[NSString alloc]initWithData:temp.responseData encoding:enc];//在将NSString类型转为NSData
NSData * data = [strdata dataUsingEncoding:NSUTF8StringEncoding];//这样解决的乱码问题。
NSDictionary *json = [NSJSONSerialization JSONObjectWithData:data options:kNilOptions error:&error ];