Где хранить. json файл в Android Студийном проекте, чтобы я мог прочитать его с помощью FileReader? - PullRequest
0 голосов
/ 12 января 2020

Я создал приложение на Android Studio с Libgdx, которое может читать. json файл, который хранится в папке проекта

, это выглядит так

 private void readFile() {
    JsonParser jsonParser = new JsonParser();
    try (FileReader reader = new FileReader("file.json"))
    {
        //reads file
    } catch (IOException | ParserException e) {
        e.printStackTrace();
    }
}

Все работает на настольном приложении, но когда я запускаю его на android приложение, конечно, не появляется и не загружается. Я не могу найти информацию о том, где она должна храниться. FileReader позволяет мне вводить только строку, но не место, где находится файл.

Является ли FileReader плохим выбором или местоположение, в котором он ищет, можно изменить?

1 Ответ

1 голос
/ 12 января 2020

Вам необходимо сохранить файл json в папке активов. И чтобы прочитать ваш. json из файла ресурсов используйте код ниже.

 JSONObject obj = new JSONObject(readJSONFromAsset());

public String readJSONFromAsset() {
String json = null;
try {
    InputStream is = getAssets().open("yourFile.json");
    int size = is.available();
    byte[] buffer = new byte[size];
    is.read(buffer);
    is.close();
    json = new String(buffer, "UTF-8");
} catch (IOException ex) {
    ex.printStackTrace();
    return null;
}
return json;
}
...