今天在请求网络数据的时候,发现昨天能正常显示的页面,竟然刷新不出来了,显示内容为空.
经过断点后发现,实际上能请求到数据(NSData) 但是在转换成字符串(NSString)时,遇到了特殊字符"�",导致字符串被截断,再进行JSON解析后得到的数组(NSArray)或字典(NSDictionary)为空.
"�" 产生的原因是JAVA服务端从数据库取了一个"空"(或其它异常字符)值,再结合其它数据生成了JSON返回给客户端.
通过浏览器得到的字符串:
{
"applicantNum": 3,
"creatTime": 1373262909000,
"nickName": "侧耳倾听",
"onlineCharge": "�",
"totalCost": 2500,
"difficulty": "生离死别",
}
xcode中打印的字符串:
{
"applicantNum": 3,
"creatTime": 1373262909000,
"nickName": "侧耳倾听",
"onlineCharge": "
虽然通过修改了数据库的值,返回了正确数据,但是从程序的健壮性来讲,NSDate转NSString在遇到一个异常字符时,就导致整个字符串无法正确转换,实难以心安.
备忘以便来时再究.
同时恳请高手指点.