У меня есть файл JSON с двумя JSON-массивами в нем: Один массив для маршрутов и один массив для прицелов.
Маршрут должен состоять из нескольких объектов, к которым пользователь переходит. К сожалению, я получаю сообщение об ошибке:
JSONException: значение типа java.lang.String не может быть преобразовано в JSONObject
Вот мои переменные и код, который анализирует JSON файл:
private InputStream is = null;
private String json = "";
private JSONObject jObj = null;
try {
BufferedReader reader = new BufferedReader(new InputStreamReader(is, "iso-8859-1"), 8);
StringBuilder sb = new StringBuilder();
String line = null;
while ((line = reader.readLine()) != null) {
sb.append(line + "\n");
}
is.close();
// hier habe ich das JSON-File als String
json = sb.toString();
Log.i("JSON Parser", json);
} catch (Exception e) {
Log.e("Buffer Error", "Error converting result " + e.toString());
}
// try parse the string to a JSON object
try {
jObj = new JSONObject(json);
} catch (JSONException e) {
Log.e("JSON Parser", "Error parsing data " + e.toString());
}
// return JSON String
return jObj;
}
Log.i( "JSON Parser", json);
показывает, что в начале сгенерированной строки появляется странный знак:
но ошибка здесь:
try {
jObj = new JSONObject(json);
} catch (JSONException e) {
Log.e("JSON Parser", "Error parsing data " + e.toString());
}
04-22 14: 01: 05.043: E/JSON Parser (5868): данные анализа ошибок org.json.JSONException: значение //STRANGE ЗНАЕТ ЗДЕСЬ//типа java.lang.String не может быть преобразован в JSONObject
Кто-нибудь знает, как избавиться от этих знаков, чтобы создать JSONObject?