84669 person learning
152542 person learning
20005 person learning
5487 person learning
7821 person learning
359900 person learning
3350 person learning
180660 person learning
48569 person learning
18603 person learning
40936 person learning
1549 person learning
1183 person learning
32909 person learning
我在使用JSONObject.fromObject(jsonStr)的时候,如果有一个key是json格式的,那么这个json的String在最外层会多一对",请问这是怎么回事?
JSONObject.fromObject(jsonStr)
"
首先,json的范式是: 来源:http://json.org
从上图可以看出,key的类型,只能是string,至于value值,有string,array,object等(详情可以从上面的链接查看)。至于string类型,标准的格式是:string形式: "" 或者 " chars "(这个在链接页面也有。) 标准的字符串,是由双引号括起来的。 知道了json的范式,你的问题也很清晰了。无论你的key是什么类型,都会被解析器认为是string类型,因为这是范式要求。所以不是多了一对引号,只是因为你本来的key值,解析出来的结果有字符串而已。
没看明白。用的哪个jar包?jsonStr这个值是什么?
首先,json的范式是:
![](http://img.php.cn/upload/image/000/000/000/5e2340e5588ee2bab2df7dd1c62bfb56-0.png)
来源:http://json.org
从上图可以看出,key的类型,只能是string,至于value值,有string,array,object等(详情可以从上面的链接查看)。至于string类型,标准的格式是:string形式: "" 或者 " chars "(这个在链接页面也有。)
标准的字符串,是由双引号括起来的。
知道了json的范式,你的问题也很清晰了。无论你的key是什么类型,都会被解析器认为是string类型,因为这是范式要求。所以不是多了一对引号,只是因为你本来的key值,解析出来的结果有字符串而已。
没看明白。用的哪个jar包?jsonStr这个值是什么?