如何按名称从res / raw读取文件

如何按名称从res / raw读取文件

我想从res / raw /文件夹中打开一个文件。我绝对相信文件存在。要打开我试过的文件

File ddd = new File("res/raw/example.png");

命令

ddd.exists();

收益率为假。所以这种方法不起作用。

MyContext.getAssets().open("example.png");

以getMessage()“null”结束异常。

简单地使用

R.raw.example

因为文件名仅在运行时作为字符串被识别,所以是不可能的。

为什么访问文件夹/ res / raw /中的文件如此困难?


肥皂起泡泡
浏览 486回答 3
3回答

侃侃尔雅

在给定链接的帮助下,我能够自己解决问题。正确的方法是获取资源IDgetResources().getIdentifier("FILENAME_WITHOUT_EXTENSION",                              "raw", getPackageName());将其作为InputStreamInputStream ins = getResources().openRawResource(             getResources().getIdentifier("FILENAME_WITHOUT_EXTENSION",             "raw", getPackageName()));

LEATH

您可以使用原始/ res读取文件getResources().openRawResource(R.raw.myfilename)。但是有一个IDE限制,您使用的文件名只能包含小写字母数字字符和点。所以文件名喜欢XYZ.txt或my_data.bin不会在R中列出。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Android