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 相关文章推荐
推荐dojo学习笔记
Mar 24 Javascript
javascript改变position值实现菜单滚动至顶部后固定
Jan 18 Javascript
node+experss实现爬取电影天堂爬虫
Nov 20 Javascript
AngularJS定时器的使用与移除操作方法【interval与timeout】
Dec 14 Javascript
Node.js服务器开启Gzip压缩教程
Aug 11 Javascript
基于AngularJS的简单使用详解
Sep 10 Javascript
vue非父子组件通信问题及解决方法
Jun 11 Javascript
对Vue2 自定义全局指令Vue.directive和指令的生命周期介绍
Aug 30 Javascript
apicloud拉起小程序并传递参数的方法示例
Nov 21 Javascript
详解js创建对象的几种方法及继承
Apr 12 Javascript
vue-cli3跨域配置的简单方法
Sep 06 Javascript
antd table按表格里的日期去排序操作
Nov 17 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
支持oicq头像的留言簿(一)
2006/10/09 PHP
php上传大文件设置方法
2016/04/14 PHP
Laravel框架定时任务2种实现方式示例
2018/12/08 PHP
php中访问修饰符的知识点总结
2019/01/27 PHP
使用laravel指定日志文件记录任意日志
2019/10/17 PHP
jQuery中add实现同时选择两个id对象
2010/10/22 Javascript
jQuery学习基础知识小结
2010/11/25 Javascript
javascript中类的定义及其方式(《javascript高级程序设计》学习笔记)
2011/07/04 Javascript
js读写json文件实例代码
2014/10/21 Javascript
JQuery控制div外点击隐藏而div内点击不会隐藏的方法
2015/01/13 Javascript
JS中frameset框架弹出层实例代码
2016/04/01 Javascript
AngularJS教程之环境设置
2016/08/16 Javascript
js实现颜色阶梯渐变效果(Gradient算法)
2017/03/21 Javascript
js实现延迟加载的几种方法
2017/04/24 Javascript
vue实现抖音时间转盘
2019/09/08 Javascript
VUE 动态组件的应用案例分析
2019/12/02 Javascript
vue中渲染对象中属性时显示未定义的解决
2020/07/31 Javascript
[04:40]2016国际邀请赛中国区预选赛全程TOP10镜头集锦
2016/07/01 DOTA
mysql 之通过配置文件链接数据库
2017/08/12 Python
python实现读取excel写入mysql的小工具详解
2017/11/20 Python
TensorFlow模型保存和提取的方法
2018/03/08 Python
python连接mongodb密码认证实例
2018/10/16 Python
使用PM2+nginx部署python项目的方法示例
2018/11/07 Python
Python设计模式之观察者模式原理与用法详解
2019/01/16 Python
PyTorch的Optimizer训练工具的实现
2019/08/18 Python
用python介绍4种常用的单链表翻转的方法小结
2020/02/24 Python
解决python 执行sql语句时所传参数含有单引号的问题
2020/06/06 Python
美国销售第一的智能手机和平板电脑保护壳:OtterBox
2017/12/21 全球购物
Johnson Fitness澳大利亚:高级健身器材
2021/03/16 全球购物
师范生自荐信范文
2013/10/06 职场文书
酒店公关部经理岗位职责
2013/11/24 职场文书
合作意向书
2014/07/30 职场文书
2014年党员发展工作总结
2014/12/02 职场文书
2015年中学图书馆工作总结
2015/07/22 职场文书
党员干部学法用法心得体会
2016/01/21 职场文书
MySQL事务的ACID特性以及并发问题方案
2022/07/15 MySQL