如何在Android的Java库中添加资源(例如文本文件)
我正在为Android创建一个Java库。库的一部分依赖于文本文件,其中包含无法放入源代码文件中的大型数据集 现在,当我在本地测试时,它可以工作,但当我试图将它用作库时,它就不工作了 我有一种感觉,它没有得到正确的路径,或者文件本身从库中丢失了 我想知道在Android Studio中将文本文件添加到Android Java库的步骤 我必须向构建文件添加任何内容吗? 或者我必须把文本放在一个特定的文件夹中? 或者我必须使用不同的代码来获取文件路径? 或者别的什么 我使用的是包存储库 有关更多信息,您可以查看存储库 获取数据如何在Android的Java库中添加资源(例如文本文件),java,android,Java,Android,我正在为Android创建一个Java库。库的一部分依赖于文本文件,其中包含无法放入源代码文件中的大型数据集 现在,当我在本地测试时,它可以工作,但当我试图将它用作库时,它就不工作了 我有一种感觉,它没有得到正确的路径,或者文件本身从库中丢失了 我想知道在Android Studio中将文本文件添加到Android Java库的步骤 我必须向构建文件添加任何内容吗? 或者我必须把文本放在一个特定的文件夹中? 或者我必须使用不同的代码来获取文件路径? 或者别的什么 我使用的是包存储库 有关更多信息
File File=new文件(“AstroJava/src/main/resources/cities.txt”);
项目结构
您可以将文件定位到“资产”文件夹中 您可以在代码中引用它,如: 科特林 JAVA
试试看{
InputStream InputStream=context.getAssets().open(“cities.txt”);
}捕获(IOE异常){
e、 printStackTrace();
}
您可以将文件定位到“资产”文件夹中
您可以在代码中引用它,如:
科特林
JAVA
试试看{
InputStream InputStream=context.getAssets().open(“cities.txt”);
}捕获(IOE异常){
e、 printStackTrace();
}
这是一个Java库,因此我无法访问context.assets.open(“…”)方法,或者我缺少了什么@yoonhokOh。。。很抱歉这不是Android项目,而是纯java项目。。。忽视我的回答;;;这是一个Java库,所以我没有访问context.assets.open(“…”)方法的权限,或者我遗漏了什么@yoonhokOh。。。很抱歉这不是Android项目,而是纯java项目。。。忽视我的回答;;;
── AstroJava.iml
├── README.md
├── build
│ ├── ******
│ │
│ └── tmp
│ └── ******
├── build.gradle
├── libs
└── src
└── main
├── java
│ └── app
│ └── photony
│ └── java
│ └── astrojava
│ ├── CalendarHelper.java
│ ├── Cities.java
│ ├── Main.java
│ ├── MathHelper.java
│ ├── Moon.java
│ ├── Sun.java
│ └── TimeZoneHelper.java
└── resources
└── cities.txt
── AstroJava.iml
└── src
└── main
├── java
└── res
└── assets
└── cities.txt
val inputStream = context.assets.open("cities.txt")