Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/349.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/221.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何通过id获取原始资源文件名?_Java_Android - Fatal编程技术网

Java 如何通过id获取原始资源文件名?

Java 如何通过id获取原始资源文件名?,java,android,Java,Android,我在res/raw中有.ogg文件,我已经实现了一个将文件保存到SD卡的功能,我想从原始文件设置文件名。它应该与一起使用以获取包:键入/entryname,或者获取资源。getResourceEntryName(id)以获取条目名(文件名)如果要从资源ID中查找名称,可以使用。您可以使用Context.getResources()获取资源对象 就我个人而言,我更愿意在您的strings.xml中存储一个字符串数组,并将其映射到资源ID,但这取决于您真正想要完成的任务。这是一个非常古老的问题,但如

我在res/raw中有.ogg文件,我已经实现了一个将文件保存到SD卡的功能,我想从原始文件设置文件名。

它应该与

一起使用以获取
包:键入/entryname
,或者
获取资源。getResourceEntryName(id)
以获取条目名(文件名)

如果要从资源ID中查找名称,可以使用。您可以使用
Context.getResources()
获取资源对象


就我个人而言,我更愿意在您的strings.xml中存储一个字符串数组,并将其映射到资源ID,但这取决于您真正想要完成的任务。

这是一个非常古老的问题,但如果其他人也尝试做同样的事情,这可以用于获取文件名:

Resources myResources = context.getResources();

String myFileName = myResources.getString((int)R.raw.myFile);
出于某种原因,即使
R.raw.myFile
的类型为:“final int” 而
Resources.getString()
接受参数“int id”

如果不将
R.raw.myFile
强制转换为int,Lint将用错误标记该行 “应为字符串类型的资源”

尽管查阅了文档,但似乎没有一个重载版本的
Resources.getString()
使用字符串参数


我在Android Studio v3.6.3上,支持至少21个SDK

你的问题是什么?你有一个资源ID作为int“R.raw.music”,你想从中得到字符串“music”?!这不是与OP要求的相反吗?鬼鬼祟祟的,你链接到了正确的函数,但答案本身有错误的函数。我猜这就是你如何影响作品的:)幸运的是,这不是一个色情链接,你会说我这样做是为了上诉作品;)没有名称为resources的方法。getResourceByName()