Я искал всю ночь, но я не мог найти ничего, что сработало бы для меня.Как читать из JSON-файла в Java
Я пытаюсь прочитать и проанализировать JSON-файл на Java. Я пробовал каждый найденный мной код, но никто не работал для меня. Я очень благодарен за вашу помощь.
Так вот код:
public void parseJSONData() {
clearData();
try {
FileInputStream in = openFileInput(getFilesDir()
+ "/tbl_category.json");
InputStreamReader inputStreamReader = new InputStreamReader(in);
BufferedReader bufferedReader = new BufferedReader(inputStreamReader);
StringBuilder sb = new StringBuilder();
String line;
while ((line = bufferedReader.readLine()) != null) {
sb.append(line);
}
Я использую getFilesDir() + "/tbl_category.json" потому загрузки приложения some.json файл в /data/data/com.the.restaurant/ файлы/когда он запущен.
А вот остальная часть кода класса:
// parse json data and store into arraylist variables
JSONObject json = new JSONObject(line);
JSONArray data = json.getJSONArray("data");
for (int i = 0; i < data.length(); i++) {
JSONObject object = data.getJSONObject(i);
JSONObject category = object.getJSONObject("Category");
Category_ID.add(Long.parseLong(category
.getString("Category_ID")));
Category_name.add(category.getString("Category_name"));
Category_image.add(category.getString("Category_image"));
Log.d("Category name", Category_name.get(i));
}
} catch (MalformedURLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
IOConnect = 1;
e.printStackTrace();
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
Я только начал изучать Java, и я наиболее высоко ценю вашу помощь!
Конкретно. Что не получается, что происходит, что должно произойти? –
И проблема в том, где? Что именно не работает? –
Изменить JSONObject json = new JSONObject (строка); к JSONObject json = new JSONObject (sb.toString()); – Divers