サーバーから取得した JSON があります。
"[{\"id\":\"1\",\"name\":\"Milos\",\"city\":\"Smederevo\",\"email\":\"milos\",\"password\":\"\"},
{\"id\":\"3\",\"name\":\"Boban\",\"city\":\"Beograd\",\"email\":\"bole\",\"password\":\"\"},
{\"id\":\"4\",\"name\":\"Pele\",\"city\":\"Brazil\",\"email\":\"pele@pele.com\",\"password\":\"\"},
{\"id\":\"5\",\"name\":\"admin\",\"city\":\"Smederevo\",\"email\":\"admin\",\"password\":\"\"}]"
私はそのjsonを使用して、自分のスレッド(Androidスレッド)に送信しています:
try {
// Method from which I am getting Json described above
String s = dm.getAllUsers();
/*JSONParser jp = new JSONParser();
JsonElement jelement = new JsonParser().parse(s);
JsonArray array1 = jelement.getAsJsonArray();*/
JSONArray array = new JSONArray(s);
for (int i = 0; i < array.length(); i++) {
JSONObject menuObject = array.getJSONObject(i);
// doing something with the object
}
} catch (JSONException e) {
e.printStackTrace();
}
そのJsonをまったく処理できません。「java.lang.String を JSONArray に変換できません」というエラーが表示されます。問題の原因が「\」であることはわかっていますが、「\」を取り除く方法がわかりません。
私は試した:
1) s.replace("\\", "");
2) s.replace("\"", "'");
3) s.replaceAll("\\", "");
4) s.replaceAll("\"", "'");
「\」を消去するのに置換しても全く反応しません。また、「google-gson-2.2.2」ライブラリ(上記のコメントの下のコード、メソッドの下のコード)の問題を解決しようとしました。
何かアドバイスをお願いします。