所以我的主要想法是在res / raw目录中打开一个上传的文件,编辑它,保存并重新打开它。但我还需要一个函数来设置默认值(用默认值覆盖csv文件),所以我需要2个文件,默认的文件和另一个我编辑和阅读的文件。 是不是你不能写文件并将其存储在res / raw目录中?如果是,那么在这种情况下,最好的方法是什么?我应该将所有内容保存在内部/外部存储器中,然后从此处打开它吗?
try {
FileOutputStream fileOut = openFileOutput("C:\\Users\\textfile.csv", MODE_WORLD_WRITEABLE);
OutputStreamWriter outputWriter = new OutputStreamWriter(fileOut);
for (int b = 0; b < test.AddName("Karlos",1,1,vardadienas).size(); b++) {
outputWriter.write(test.AddName("Karlos",1,1,vardadienas).get(b));
outputWriter.write("\n");
}
outputWriter.close();
} catch (Exception e) {
e.printStackTrace();
}
我使用 getResources()方法并读取文件(在资源文件夹中上传),将其保存在列表数组中,编辑数组然后我应该保存,但在哪里?还有为什么这个方法不会创建任何文件?我设置了路径,但它没有创建任何东西..
我也遇到了这个错误:
在android.content.ContextWrapper.openFileOutput(ContextWrapper.java:201)
在com.example.firstapp.firstapp.MainActivity.onCreate(MainActivity.java:86)
答案 0 :(得分:1)
你不能写入res / raw,因为它是apk文件的一部分。
但您可以从res / raw ant中读取,然后在应用程序的本地和私有存储中写入该文件的副本。
然后,无论您计划如何处理res / raw中的文件,您都可以在本地存储副本中执行此操作。