java - 在 Android Studio 中获取绝对路径和打开文件时遇到问题

标签 java android file path filereader

我正在尝试在 Android Studio 中打开一个文件。我创建了一个具有路径的 Assets 文件夹:

app_name\app\src\main\assets\file.csv

当我尝试使用

打开它时
FileReader file = new FileReader("assets/PlayerDB.csv");

我收到错误消息,指出找不到文件。为了尝试找出获取文件的根目录的位置,我使用了以下内容:

File f = new File("test/test.txt");
String Path = f.getAbsolutePath();
Log.v("File Path",Path);

但是,这只是将“test/test.txt”打印到日志中。关于如何获取工作的绝对路径以及如何从 Assets 文件夹中打开文件有什么想法吗?

谢谢!

最佳答案

将 PlayerDB.csv 文件放置在 Android 项目下的/assets 目录中。使用AssetManager类来访问它。

AssetManager am = context.getAssets();
InputStream is = am.open("PlayerDB.csv");

如果您在 fragment 中使用它

AssetManager am = getActivity().getAssets();
InputStream is = am.open("PlayerDB.csv");

关于java - 在 Android Studio 中获取绝对路径和打开文件时遇到问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32803663/

相关文章:

java - 使用 Mockito 测试抽象类。如何?

java.io.UnsupportedEncodingException : application/json; charset=UTF-8

c# - 如何在不使用 C# 将其设置为默认打印机的情况下直接打印到 zebra 打印机?

php通过FTP将文件从服务器上传到另一个服务器?

java - 有趣的 boolean 语法

java - Paths.get - 指定平台?

android - 内容提供商 : wrap with a static facade?

java - Android - 获取 GPS 坐标和位置

c - 为什么“while(!feof(file))”总是错误的?

java - Pivot Cloud Foundry 错误 : "Browser detection failed and system property h2.browser not set" - Spring Boot 2