Javaアプリケーションの一部としてJSONシンプルを使用して、特定のデータを.jsonファイルから取得しようとしています。プログラムを実行するたびに、解析しようとすると予期しないトークンエラーメッセージが表示されます。次のようにシンプルなJSONの予期しないトークン{位置> 1の場合
JSONファイルの簡易版であるこの例では
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);
を次のように
{"id":123,"text":"sample1","user":{"id":111,"name":"username"},"lang":"en"}
{"id":345,"text":"sample2","user":{"id":555,"name":"user2"},"lang":"en"}
私のコードであります
は、2番目のJSONオブジェクトの最初の左かっこ({)の予期しないトークンのためにエラーをスローします(つまり、中括弧befo re "id":345)。
この問題を解決するにはどうすればよいですか? また、この例では、フォローアップとして、ユーザー名の情報をどのように引き出すのでしょうか?
時間を割いてお読みいただきありがとうございました。
これはJSONでは無効な '{} {}'です。 JSONはファイル['{}、{}]'の配列でなければならないか、一度に1行ずつ解析する必要があります –
JSONが無効です。間違った形式です。 – Enzokie