gpt4 book ai didi

java - 在 Android Studio 中加载文件

转载 作者:太空宇宙 更新时间:2023-11-04 13:36:29 24 4
gpt4 key购买 nike

我已经尝试过这里建议的解决方案: Load a simple text file in Android Studio其中。

我需要从 Activity 类外部加载文件,并在其他各种类中使用这些值。

(旁注,我不一定必须将文件放在 Assets 文件夹中,它们可以位于任何地方,只要我可以以某种方式加载它们)。

基本上,它告诉我检查名为“app.iml”的文件是否包含以下行:

option name="ASSETS_FOLDER_RELATIVE_PATH" value="/src/main/assets"

确实如此。

之后,将文件添加到“assets”目录中。

然后我尝试使用以下方式加载文件:

File file = new File("IDs.txt");

Scanner in = new Scanner(file);

但我收到“找不到文件”异常。

无论我将文件放在哪里,我都无法加载它们。有什么建议吗?

最佳答案

通过将文件复制到应用程序文件夹更新答案

您无法使用 File f = new File 从资源中打开文件。您应该像这样打开 Assets :

File ids = new File(getExternalFilesDir("txt") + File.separator + "IDs.txt");
InputStream is = null;
if (!ids.exists()) {
AssetManager manager = getAssets();
try {
is = manager.open("IDs.txt");
} catch (IOException e) {
e.printStackTrace();
}

if (is != null)
try{
OutputStream outputStream = new FileOutputStream(ids);
byte buffer[] = new byte[1024];
int length = 0;

while ((length = is.read(buffer)) > 0) {
outputStream.write(buffer, 0, length);
}

outputStream.close();
} catch (IOException e) {
e.printStackTrace();
}
}

try {
is.close();
} catch (IOException e) {
e.printStackTrace();
}

现在您可以为您的类设置 file 或 file_path :

File ids = new File(getExternalFilesDir("txt") + File.separator + "IDs.txt");

要获取完整路径,请使用 ids.getAbsolutePath();

关于java - 在 Android Studio 中加载文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31641040/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com