Android:如何从res文件夹中的R.raw获取文件路径?

Android:如何从res文件夹中的R.raw获取文件路径?,android,Android,我在android res文件夹中的raw文件夹中有一个名为words.txt的文本文件。我不知道如何获取它的路径,以使用给定的路径创建新文件。我使用下面的代码,但似乎不起作用: File file = new File("res/raw/words.txt").getAbsoluteFile(); String filePath = file.getAbsolutePath(); File wordFile = new File(filePath); 您无法写入自己应用程序的res文件夹。它

我在android res文件夹中的raw文件夹中有一个名为words.txt的文本文件。我不知道如何获取它的路径,以使用给定的路径创建新文件。我使用下面的代码,但似乎不起作用:

File file = new File("res/raw/words.txt").getAbsoluteFile();
String filePath = file.getAbsolutePath();
File wordFile = new File(filePath);

您无法写入自己应用程序的res文件夹。它是不可修改的

但您可以在此处创建文件:


如果要使用words.txt作为基线,可以在运行时从中读取并复制到可修改的文件。

您可以按如下方式读取
raw/words.txt

// The InputStream opens the resourceId and sends it to the buffer
InputStream is = this.getResources().openRawResource(R.raw.words);
BufferedReader br = new BufferedReader(new InputStreamReader(is));
String readLine = null;

try {
    // While the BufferedReader readLine is not null 
    while ((readLine = br.readLine()) != null) {
    Log.d("TEXT", readLine);
}

// Close the InputStream and BufferedReader
is.close();
br.close();

} catch (IOException e) {
    e.printStackTrace();
}

注意:此代码必须位于
活动
类中,因为
this.getResources()
指的是
上下文.getResources()

您得到了什么。。?错误?我将此文件发送到要从中提取信息的方法,但未提取任何内容。这意味着它没有读取文件。但在java works中…可能重复您的意思是我使用InputStream从我的文件复制数据并使用生成的文件?是的,像Amulya的答案一样阅读它,然后将其写回另一个文件(如果您需要的话)谢谢。我认为这是唯一的办法。好吧,我认为你是对的。如果我在运行时将文件内容复制到一个新的可修改文件中,这会很好。嗯?是的,那会有用的。你为什么需要这个新文件?您可以使用上面的方法读取它?我将文件作为参数传递给另一个类中的方法,并在那里提取内容。如果该文件可以在不使用新生成的文件的情况下发送到该文件,那就更好了。还有一件事,你知道我应该把该文件放在哪里吗,我是说,在SD卡或其他地方生成它?如果我想在内部存储器中访问它,我应该怎么做?