文档章节

IOS开发接口中出现"\"的问题 -JSON数据解析崩溃解决办法

RainOrz
 RainOrz
发布于 2015/08/17 20:29
字数 622
阅读 1030
收藏 3

最近在项目开发中,由于后台接口有问题,出现了"\"这样的数据,按照一般开发中JSON数据读取的方式,会无法识别,因为在一般的语言中"\"都是转义,那么问题来了,怎么解决呢?

这个问题 困扰了我好久,首先我们来看一下,用BeJson来识别一下正常的JSON数据:

数据就是下边这段,不相信的可以自己去测试哦

{
    "id": 443017,
    "Content": "0",
    "title": "神器 这个小配件能减少汽车20%油耗",
    "postdate": "2015-8-17 20:10:39",
    "icon": "http://img1.mydrivers.com/img/20150817/33e6bcc959474599b070a31bf4bb9d38.jpg",
    "desc": "汽车的出现,大大增加人类出行效率的同时,也带来了两个巨大的问题:能量消耗和环境污染。不管世界末日的传说是不是危言...",
    "reviewcount": 4,
    "stress": "",
    "isdel": "False",
    "ispass": "True"
}

直接放到bejson检测


ok 没问题

那么 我们现在随便 加上一个"\"试试



奇怪的,这就失败了,其实 ,你如果用回车测试一下 ,也会有惊喜的:


不知道是我的错还是后台的故意整我,,,这样的感觉很不好,我数据解析用的第三方  AFNetworking

这个问题,我有一种崩溃的感觉,除了使用第三方库,感觉,其他的不会再爱了,我自己想过解决办法,但是,有些死板,方法如下:

//我一般用的下载第三方库AFNetworking
//json 解析
//            NSString *mustr=[[NSMutableString alloc]
//                             initWithData:responseObject encoding:NSUTF8StringEncoding];//二进制转换成字符串
//            mustr=[mustr stringByReplacingOccurrencesOfString:@"\\"withString:@""];//替换字符串里边的内容
//            NSLog(@"%@",mustr);//打印一下
//            responseObject=[NSMutableData dataWithData:[mustr dataUsingEncoding:NSUTF8StringEncoding]];//再把替换过的字符串转换成二进制,用来解析

这算是一种比较懒(烂)的方式,因为有好多终端命令,都会有反斜线,因此,我个人认为,除了后台需要做好这方面之外,那只有自己解析了,或者,直接跳过此条信息,再或者,,,,找一下更成熟的第三方库就好了,,,

最后我想说,程序员何必难为程序员!!!好好地代码好好的写呗,不要写这些乱七八糟的东西,不行么   T^T

© 著作权归作者所有

RainOrz
粉丝 8
博文 160
码字总数 96332
作品 0
青浦
程序员
私信 提问
ios中应用Lottie解决动画问题

作为一名iOS工程师,深知复杂动画的痛苦,下面我们来介绍下Lottie来解决日常的动画难题。 Lottie的简单介绍: 使用Lottie开发的流程是: 设计师在AE中设计完成你的动画,通过bodymoving插件导...

威廉云霄
02/20
0
0
IOS下WEBVIEW 的javascript数组与json定义 及交互

最近在折腾IOS新闻浏览客户端,当中需要用到webview传递JSON数据到IOS上,然后在IOS上解析。刚入门IOS不久,看了不少的书,但都是囫囵吞枣。在开发过程中,遇到不少问题。 开发环境 mac mini...

GIFCOOL
2013/08/20
4K
0
Libgdx 1.5.2 发布,跨平台游戏开发框架

Libgdx 1.5.2 发布,此版本更新内容如下: [1.5.2] - 修复问题 #2433 - 修复LWJGL在Mac OS X的本地载入问题 [1.5.1] - Gradle 升级到 2.2 - Android Gradle 工具升级到 1.0.0 - API更改:GWT...

宋志辉
2015/01/06
3.1K
23
ios中json解析出现的null问题

在iOS开发过程中经常需要与服务器进行数据通讯,Json就是一种常用的高效简洁的数据格式。 问题现象 但是几个项目下来一直遇到一个坑爹的问题,程序在获取某些数据之后莫名崩溃。其实很早就发...

余成海
2015/04/29
29.1K
14
iOS 线上版本图片资源格式的问题导致的闪退

近段刚刚上传了app新版本 ,上线前也是各种真机调试,包括公司一位同事的iOS9.2系统的iPhone6s , 一点问题都没有 可是两天后审核通过了 我们公司其他人下载app都非常流畅 ,也没有闪退的情况...

奥卡姆剃须刀
2017/05/01
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Spring Boot 是所有基于 Spring 开发的项目的起点。Spring Boot 的设计是为了让你尽可能快的跑起来 Spring 应用程序并且尽可能减少你的配置文件。

Springboot框架搭建相关 Spring Boot 是所有基于 Spring 开发的项目的起点。Spring Boot 的设计是为了让你尽可能快的跑起来 Spring 应用程序并且尽可能减少你的配置文件。 什么是 Spring Boo...

AndLong
28分钟前
4
0
好程序员云计算学习路线分享软件包管理

好程序员云计算学习路线分享软件包管理,安装/查询/卸载 一、软件的类型 A. 源码包 需要编译 nginx-1.12.1.tar.gz B. 二进制包 已编译 mysql-community-common-5.7.12-1.el7.x86_64.rpm 常见...

好程序员官方
30分钟前
1
0
阿里巴巴小程序繁星计划 9月27日有话要说

2019年9月27日,阿里巴巴小程序繁星计划峰会将于杭州云栖小镇召开。这是自今年3月阿里巴巴正式对外宣布全面开启小程序发展战略,阿里云携手支付宝、淘宝、钉钉、高德联合发布“阿里巴巴小程序...

Mr_zebra
33分钟前
4
0
centos下搭建Jenkins持续集成环境(安装jenkins)

centos下搭建Jenkins持续集成环境(安装jenkins) 1、安装JDK yum install -y java 2、安装jenkins 添加Jenkins库到yum库,Jenkins将从这里下载安装。 1 wget -O /etc/yum.repos.d/jenkins.rep...

linjin200
35分钟前
4
0
JDK1.8.0_181的无限制强度加密策略文件变动

JDK1.8.0_151后的版本无需去官网下载 local_policy.jar US_export_policy.jar这个jar包,只需要修改Java\jdk1.8.0_181\jre\lib\security这目录下的java.security文件配置即可。 随着越来越多...

葉者
36分钟前
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部