在 Android Studio 项目中将 .json 文件存储在哪里,以便我可以使用 FileReader 读取它?

Where to store .json file in Android Studio project so i could read it with FileReader?

我使用 Libgdx 在 Android Studio 上创建了一个应用程序,它可以读取存储在项目文件夹中的 .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 是一个错误的选择还是可以更改它查找的位置?

您需要将 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;
}