json解析大全 双引号、键值对不在一起的情况


Posted in Javascript onDecember 06, 2019

json

[{"id":394,"qy_json":"{\"title\":[\"序号\",\"许可文件编号\",\"许可文件名称\",\"有效期自\",\"有效期至\",\"许可机关\",\"许可内容\",\"状态\",\"详情\"],\"info\":[[\"1\",\"(成)登记内变字【2017】第000050号\",\"其他\",\"1988年2月11日\",\"\",\"成都市工商行政管理局\",\"将“成都西南冶金测量工程公司”变更为\"四川冶勘汇宇地理信息工程公司\".\",\"有效\",\"查看\"]]}","company_id":26204710,"create_time":1488327047000}]

以上json是错误的,因为都多了中文双引号在这里 将“成都西南冶金测量工程公司”变更,下面来看解决

1.分析看出这是一个数组json

2.在数组中还有嵌套

3.嵌套中的数组并非传统冒号:隔开,而是已数组对应的方式来展现

解决步骤

1.遍历数组json

for (int i = 0; i < array.size(); i++) {
                B_admin_licens xzxk = new B_admin_licens();
                String json = array.getString(i);

2.得到数组字符串,并将双引号的问题预处理

json = json.replace("“", "");
json = json.replace("”", "");

3.字符串转json对象jsont,jsont取出对应的value值

JSONObject jsont = JSON.parseObject(json);
Object id = jsont.get("id");
Object company_id = jsont.get("company_id");

4.嵌套的value怎么取?jsont取出对应的value值转成string类型,再把qy_str转成json对象,方能取出数组内容

String qy_str = jsont.getString("qy_json");
JSONObject qy_json = JSON.parseObject(qy_str);
JSONArray info_array = qy_json.getJSONArray("info");
JSONArray title = qy_json.getJSONArray("title");

5.info是数组嵌套数组,为此要循环两次才能取出

for (int j = 0; j < info_array.size(); j++) { 
JSONArray info_list = info_array.getJSONArray(j); 
   for (int k = 0; k < info_list.size(); k++) {                            
    info_list.getString(k);
   }
 
}

json转义内容带有引号的数据

value.replace("\"",\\\")

json处理内容中多双引号的情况php端处理

$a = '{"name" : "John \"\"Cliff\"Cliff\" Barxter"}';
dump(json_decode($a, true));

好了这篇文章就介绍到这了,希望大家以后多多支持三水点靠木。

Javascript 相关文章推荐
showModelessDialog()使用详解
Sep 07 Javascript
需要做特殊处理的DOM元素属性的访问
Nov 05 Javascript
JS多物体 任意值 链式 缓冲运动
Aug 10 Javascript
Javascript 浮点运算精度问题分析与解决
Mar 26 Javascript
js不能获取隐藏的div的宽度只能先显示后获取
Sep 04 Javascript
Javascript表单验证要注意的事项
Sep 29 Javascript
Css3制作变形与动画效果
Jul 24 Javascript
图解js图片轮播效果
Dec 20 Javascript
jQuery动画显示和隐藏效果实例演示(附demo源码下载)
Dec 31 Javascript
JS实现星星评分功能实例代码(两种方法)
Jun 09 Javascript
原生js实现无限循环轮播图效果
Jan 20 Javascript
JS实现页面内跳转的简单代码
Sep 03 Javascript
js实现图片粘贴到网页
Dec 06 #Javascript
JavaScript中的函数申明、函数表达式、箭头函数
Dec 06 #Javascript
微信小程序中插入激励视频广告并获取收益(实例代码)
Dec 06 #Javascript
微信小程序实现滚动加载更多的代码
Dec 06 #Javascript
微信小程序实现滑动翻页效果(完整代码)
Dec 06 #Javascript
微信小程序实现单个卡片左滑显示按钮并防止上下滑动干扰功能
Dec 06 #Javascript
微信小程序添加插屏广告并设置显示频率(一天一次)
Dec 06 #Javascript
You might like
利用PHP动态生成VRML网页
2006/10/09 PHP
一些php项目中比较通用的php自建函数的详解
2013/06/06 PHP
微信自定义菜单的处理开发示例
2015/04/16 PHP
PHP实现八皇后算法
2019/05/06 PHP
极酷的javascirpt,让你随意编辑任何网页
2007/02/25 Javascript
jquery判断单个复选框是否被选中的代码
2009/09/03 Javascript
JQuery设置获取下拉菜单某个选项的值(比较全)
2014/08/05 Javascript
JS实现超简洁网页title标题跑动闪烁提示效果代码
2015/10/23 Javascript
javascript编程异常处理实例小结
2015/11/30 Javascript
AngularJs实现分页功能不带省略号的代码
2016/05/30 Javascript
ionic cordova一次上传多张图片(类似input file提交表单)的实现方法
2016/12/16 Javascript
过期软件破解办法实例详解
2017/01/04 Javascript
jQuery内容筛选选择器实例代码
2017/02/06 Javascript
jQuery自定义元素右键点击事件(实现案例)
2017/04/28 jQuery
详解Angular路由 ng-route和ui-router的区别
2017/05/22 Javascript
使用Angular CLI生成路由的方法
2018/03/24 Javascript
微信小程序购物车、父子组件传值及calc的注意事项总结
2018/11/14 Javascript
使用Sonarqube扫描Javascript代码的示例
2018/12/26 Javascript
详解javascript replace高级用法
2019/02/17 Javascript
JS原形与原型链深入详解
2020/05/09 Javascript
python线程池的实现实例
2013/11/18 Python
python中实现精确的浮点数运算详解
2017/11/02 Python
Python爬虫工程师面试问题总结
2018/03/22 Python
Python3调用百度AI识别图片中的文字功能示例【测试可用】
2019/03/13 Python
Mac中PyCharm配置Anaconda环境的方法
2020/03/04 Python
python 装饰器功能与用法案例详解
2020/03/06 Python
HTML5 audio标签使用js进行播放控制实例
2015/04/24 HTML / CSS
Nike瑞士官网:Nike CH
2021/01/18 全球购物
软件测试工程师结构化面试题库
2016/11/23 面试题
集团公司党的群众路线教育实践活动工作总结
2014/03/03 职场文书
中学生寄语大全
2014/04/03 职场文书
人力资源管理求职信
2014/08/07 职场文书
老公出轨后的保证书
2015/05/08 职场文书
基于Redis过期事件实现订单超时取消
2021/05/08 Redis
python生成可执行exe控制Microsip自动填写号码并拨打功能
2021/06/21 Python
MySQL分库分表详情
2021/09/25 MySQL