Java 带方括号的JSON错误
我有这样的XML文件Java 带方括号的JSON错误,java,xml,json,Java,Xml,Json,我有这样的XML文件 <Reading> <Item Month="_October.xml"> <kWhReading Firstday="1" /> <kWhReading Lastday="552" /> </Item> </Reading> 我很确定这与包含第一天和最后一天的方括号有关,但我不确定如何删除它。有人能帮我吗?从未使用过JSON库,但这应该是正确的 JSONObject readingk
<Reading>
<Item Month="_October.xml">
<kWhReading Firstday="1" />
<kWhReading Lastday="552" />
</Item>
</Reading>
我很确定这与包含第一天和最后一天的方括号有关,但我不确定如何删除它。有人能帮我吗?从未使用过JSON库,但这应该是正确的
JSONObject readingkWhLast = jsonobject.getJSONArray("kWhReading").get(1);
从jsonobject
检索名为的JSONArray
“kWhReading”
,然后检索偏移量1处的元素(第二个对象)
这些都在API文档中。您确实应该退后一步,彻底阅读文档,以便了解库的功能。一旦获得jsonArray:
[{"@Month":"_October.xml","kWhReading":[{"@Firstday":"1"},{"@Lastday":"552"}]}]
然后,需要使用带有索引号的getJSONObject()来获取该数组中的元素。第二个是“kWhReading”,因此:
这应该把你放在这里:
{"kWhReading":[{"@Firstday":"1"},{"@Lastday":"552"}]}
要获取kWhReading(它本身是一个数组)的值,请执行以下操作:
现在你到了:
[{"@Firstday":"1"},{"@Lastday":"552"}]
回到索引编号。同样,您需要第二个:
JSONObject lastDayObj = kWhReadArray.getJSONObject(1);
最后:
String lastDay = lastDayObj.getString("@Lastday");
文档在这里:看起来像是
kWhReading
是一个JSONArray
,而不是JSONObject
。是的,我也这么认为,但我不知道如何访问数组来获取数组中要存储到readingkWhLast
中的第二个值。很抱歉,它仍然抛出与上面的“kWhReading”相同的异常不是JSONObject。
[{"@Firstday":"1"},{"@Lastday":"552"}]
JSONObject lastDayObj = kWhReadArray.getJSONObject(1);
String lastDay = lastDayObj.getString("@Lastday");