Java 带方括号的JSON错误

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

我有这样的XML文件

<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");