我有被讀取並存儲在String
稱爲jsonString
這個JSON文件,它看起來像這樣:解析JSON字符串
{
"position":1,
"team_id":10260,
"home":
{
"played":18,
},
},
{
"position":2,
"team_id":8456,
"home":
{
"played":12,
},
},
代碼解析:
JSONObject obj = new JSONObject(jsonString);
Iterator it = obj.keys();
while(it.hasNext()){
String s = it.next().toString();
System.out.print(s + " " + obj.getString(s) + " ");
}
輸出是:position 1 home {"played":18} team_id 10260
所以它不讀取文件的其餘部分。你能告訴我有什麼問題嗎?而且,爲什麼home {"played":18}
在team_id 10260
之前打印?
那麼我怎樣才能移動到下一個'JSON'對象呢? – Sam
您應該確保輸入遵循'JSON'標準格式。如何做到這一點取決於你在哪裏獲得你的indata。它看起來像你所擁有的是一個數組,在這種情況下,你需要在數據的末尾添加一個'['到開始和']'。 – Keppil
它實際上有'[]',但引發了一個異常:'Syntax error,insert「}」來完成Block',所以我刪除了它們。我想我明白了。謝謝。 – Sam