在日常编程过程中,我们大多时间都会遇到数据的传递和接收,大量数据或者是键值对的数据形式,可以把数据处理成json串来传递,也方面我们获取其中的数据。
但是在有些时候我们往往没有办法把json数据串的数据成功的解析,以下为大家总结了一点我们解析json失败的一些原因:
1、json串数据不完整;
完成的json串:
{
"info": [
{
"firstName": "AAA",
"lastName": "aaa",
"email": "aaaa"
},
{
"firstName": "BBB",
"lastName": "bbb",
"email": "bbbb"
},
{
"firstName": "CCC",
"lastName": "ccc",
"email": "cccc"
}
]
}
注意问题:(所有符号为英文符号)
①、键值都应该有引号 " 包含
②、键和值之间用冒号 : 分开
③、每对键值对间用逗号 , 分割
④、一个键对应多个值则用中括号包含值,各值之间用逗号 , 分割 默认索引从0开始
2、json数据含有中文,传输过程编码不一致导致乱码
很多情况下,我们是因为在不同的编码环境下(不同系统或者编程环境下)进行传输数据,中文会导致json串乱码,这样json解析函数无法解析json串。因为json穿的格式已经被乱码的符号所破坏。
正常编码:
{
"姓": "姓",
"名": "名",
"地址": "哪里"
}
异常编码:
{
"濮?: "濮?,
"鍚?: "鍚?,
"鍦板潃": "鍝噷"
}
现在就记得这两块会导致json数据解析失败,后续发现再添加。