【发布时间】:2017-03-24 08:09:12
【问题描述】:
我在 json 文件中提取数据时遇到问题。总共有很多类似的问题,但没有一个对我有帮助。我 json 看看这个
{
"miasta" : ["A", "B", "C", "D", "E"],
"drogi" : [
{
"miasta" : ["A", "B"],
"czas_przejazdu" : 2
},
{
"miasta" : ["A", "C"],
"czas_przejazdu" : 3
},
{
"miasta" : ["A", "D"],
"czas_przejazdu" : 4
},
{
"miasta" : ["A", "E"],
"czas_przejazdu" : 1
}
],
"timeout" : 5,
"max_czas_przejazdu" : 10
}
我尝试了不同的方法,但没有得到所有数据。这是我当前的代码:
public static void main(String[] args) throws FileNotFoundException, ParseException, IOException {
JSONParser parser = new JSONParser();
JSONArray a = (JSONArray) parser.parse(new FileReader("C:\\Users\\Laptop\\Desktop\\in.json"));
for (Object o : a)
{
JSONObject person = (JSONObject) o;
String name = (String) person.get("miasta");
System.out.println(name);
JSONArray drogi = (JSONArray) person.get("drogi");
for (Object c : drogi)
{
System.out.println(c+"");
}
String job = (String) person.get("czas_przejazdu");
System.out.println(job);
}
}
还有错误:
线程“主”java.lang.ClassCastException 中的异常: org.json.simple.JSONObject 不能转换为 org.json.simple.JSONArray 在zadanie。
【问题讨论】:
-
此错误可帮助您缩小问题范围 - org.json.simple.JSONObject 无法转换为 org.json.simple.JSONArray 您正在尝试将
JSONObject转换为JSONArray。你的变量a不应该是JSONObject吗? -
您将 JSON 作为数组加载,但实际上并非如此。这是一个对象。