Ios解析java返回的数据报错,IOS 原生解析JSON 问题

服务器----WebService

返回的是JSON数据 IOS解析报错:

Error Domain=NSCocoaErrorDomain Code=3840 "Unable to convert data to string around character 56." UserInfo={NSDebugDescription=Unable to convert data to string around character 56.}

Code = 3840 错误

通过我将JSON写成文档数据本地解析成功,但在IOS请求解析一直报这个错误

两次结果不同,于是将请求来的JSON数据data打印出来,发现网路请求的JSON数据字节流和本地数据解析打印的data字节流不一样(注:我TMD一个一个对比出来的,前些数据一样,后面就不同了。你也对对看看你自己的是不是也是这个错误)

原因分析:WebService返回的是GB2312编码数据。IOS解析要转换为UTF8编码格式的数据!

解决方案:将GB2312格式的数据转换为UTF8的!

转换代码:

-(NSString *) gb2312toutf8:(NSData *) data{

NSStringEncoding enc =CFStringConvertEncodingToNSStringEncoding(kCFStringEncodingGB_18030_2000);

NSString *retStr = [[NSString alloc] initWithData:data encoding:enc];

return retStr;

}  //现将编码格式转换为NSString

调用上面的方法:

NSString *dataStr = [self   gb2312toutf8:data];

再将dataStr转换为UTF8编码的数据

NSdata *data = [dataStr   dataUsingEncoding:NSUTF8StringEncoding];

好了,可以解析data数据了

IOS数据解析JSON

//非原创 作为一种轻量级的数据交换格式,json正在逐步取代xml,成为网络数据的通用格式. 有的json代码格式比较混乱,可以使用此“http://www.bejson.com/”网站来进行JSO ...

Delphi XE6 原生解析json

Delphi XE5带了system.json单元,原生提供了json支持类.下面是解析json用法说明: 最简单的JSON大致像这样 { "date":"周二(今天, ...

ios中解析json对象基类

这个是对上面一篇写的一个解析json对象的基类 @interface BaseObjectFromJson : NSObject + (id) objectWithDict:(NSDictionary ...

在ios中解析json数据

刚刚下午那会 弄了个 解析 xml  demo的小例子,本想着json也挺复杂 弄还是 不弄,但是简单的看了下 发现挺简单 考虑了很久,还是写上来吧,毕竟json用得太多了,而且算是自己的积累吧,毕竟 ...

iOS中解析json多种方法

我感觉JSON解析,重要的是JSON解析之后对结果的处理JSON解析后是个dictionary,但是字典中有可能包含字典和数组,数组中还可以包含字典.向客户端请求的返回数据解析下面就简单介绍一下JSO ...

Android原生生成JSON与解析JSON

JSON数据是一种轻量级的数据交换格式,在Android中通常应用于client与server交互之间的传输数据.像如今在网上有非常多解析JSON数据的jar包,可是归根究竟用的都是Android原生 ...

iOS网络-02-数据解析(JSON与XML)

数据交互格式 服务器返回给用户的数据,通常是以下两种方式: JSON XML JSON 一种轻量级的数据数据格式,体积比XML小,是服务器返回给移动端通常采用的格式 用使用JSON文件中的数据,需要对 ...

iOS开发-简单解析JSON数据

什么是JSON   JSON是一种轻量级的数据格式,一般用于数据交互 服务器返回给客户端的数据,一般都是JSON格式或者XML格式(文件下载除外) JSON的格式很像OC中的字典和数组   {“nam ...

IOS 解析Json数据(NSJSONSerialization)

● 什么是JSON ● JSON是一种轻量级的数据格式,一般用于数据交互 ● 服务器返回给客户端的数据,一般都是JSON格式或者XML格式(文件下载除 外) ● JSON的格式很像OC中的字典和数组 ...

随机推荐

HDU 4858 分块

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4858 题意:中文题面 思路:来自此博客 对每个点定义两个值:val,sum,val记录自己的特征值,s ...

Spring控制Hibernate的缓存机制ehcache

首先在spring.xml中进入bean true

HDU 1016 Prime Ring Problem(经典DFS+回溯)

Prime Ring Problem Time Limit: 4000/2000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Other ...

javascript操作注册表

try{                     var shell = new ActiveXObject("WScript.Shell"); //读注册表值var  key1  ...

[React Fundamentals] Accessing Child Properties

When you're building your React components, you'll probably want to access child properties of the m ...

sae后台管理的js(二)

jsloader cssloader 使用方法

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值