java - Android从文本文件中获取图像路径
问题描述
我的资产文件夹中有一个文本文件,其中包含出口的详细信息,例如:
麦当劳 | 任何麦当劳分店| 适用于任何午餐套餐| 买一送一| 8 月 1 日 - 8 月 31 日| RM 32.00| RM 16.00| 图标_nandos.png
我将它们拆分并存储在字符串数组中。但我无法从第 7 个数组项(即 icon_nandos.png)中设置图像
try{
bufferedReader = new BufferedReader(new
InputStreamReader(this.getAssets().open("food_catalog.txt")));
while ((food = bufferedReader.readLine())!=null) {
if (!food.equals("")) {
String[] foodInfo = food.split("\\|");
tv.setText(foodInfo[0] + "\n" + foodInfo[1] + "\n" + foodInfo[2] + "\n" + foodInfo[3] + "\n" + foodInfo[4] + "\n" + foodInfo[5] + "\n" + foodInfo[6] + "\n" + foodInfo[7] + "\n");
img.setImageBitmap(BitmapFactory.decodeFile(foodInfo[7]));
}
}
}
我尝试了几种设置图像的方法,例如 setImageURI,但图像仍然无法显示。我做错什么了吗?网上的许多资源都没有提到我在做什么。
图像和文本文件位置
解决方案
您还需要通过getAssets()
.
尝试如下
InputStream inStream= getAssets().open(foodInfo[7]);
Drawable drw = Drawable.createFromStream(inStream, null);
img.setImageDrawable(drw);
inStream.close();
假设你
foodInfo[7]
给你的名字“icon_nandos.png”
推荐阅读
- python-3.x - 如何使用python更新现有word文档中的内容
- java - 在java中复制二维数组的每一行和每一列
- javascript - 如何使用 Angular5/6 显示下拉选择的项目?
- c++ - 计算while循环的运行时间
- angular - Trying to publish emails to firebase console
- sql - 使用点表示法和 sum() 在多个数据库中查询相同但多列
- multithreading - Mac 允许的最大线程数
- html - 如何使 Bootstrap 表中的嵌套表不继承父 Bootstrap“表”类?
- java - 在 JAVA 中重构 JSON 文件
- python - 从两个数据文件中提取唯一行