JSONObject出错


我在使用 JSONObject.fromObject(jsonStr) 的时候,如果有一个key是json格式的,那么这个json的String在最外层会多一对 " ,请问这是怎么回事?

java json javaweb

Black★喵 9 years, 8 months ago

没看明白。用的哪个jar包?jsonStr这个值是什么?

papaya answered 9 years, 8 months ago

首先,json的范式是:
图片描述
来源: http://json.org

从上图可以看出,key的类型,只能是string,至于value值,有string,array,object等(详情可以从上面的链接查看)。至于string类型,标准的格式是:string形式: "" 或者 " chars "(这个在链接页面也有。)
标准的字符串,是由双引号括起来的。
知道了json的范式,你的问题也很清晰了。无论你的key是什么类型,都会被解析器认为是string类型,因为这是范式要求。所以不是多了一对引号,只是因为你本来的key值,解析出来的结果有字符串而已。

淋淋查水表 answered 9 years, 8 months ago

Your Answer