我試圖使用JSON作爲Java應用程序的一部分來從.json文件中提取特定數據。每當我運行該程序時,它會在嘗試解析時收到意外的令牌錯誤消息。簡單的JSON意外的令牌{在位置> 1
JSON文件的簡化版本如下:
{"id":123,"text":"sample1","user":{"id":111,"name":"username"},"lang":"en"}
{"id":345,"text":"sample2","user":{"id":555,"name":"user2"},"lang":"en"}
我的代碼如下:
public static void readJSON() {
JSONParser jsonParser = new JSONParser();
try {
FileReader reader = new FileReader(fileLocation);
JSONObject jsonObject = (JSONObject) jsonParser.parse(reader);
JSONArray jsonArray = (JSONArray) jsonObject.get("");
Iterator<?> i = jsonArray.iterator();
while (i.hasNext()) {
JSONObject obj = (JSONObject) i.next();
int tweetID = (int) obj.get("id");
String lang = (String) obj.get("lang");
}
} catch (Exception e) {
e.printStackTrace();
}
}
在這個例子中,代碼的行:
JSONObject jsonObject = (JSONObject) jsonParser.parse(reader);
由於第二個JSON對象的第一個左大括號({)處的意外標記而引發錯誤(即,在大括號befo重新「ID」:345)。
我該如何解決這個問題? 而且,作爲一個後續,在這個例子中,如何爲用戶名提取信息呢?
感謝您花時間閱讀本文並提供任何幫助!
基本上這是'{} {}'這在JSON中是無效的。 JSON或者需要是文件本身'[{},{}]'中的一個數組,否則您需要一次解析它一行 –
您的JSON無效我的意思是格式錯誤。 – Enzokie