如何在android中的Raw文件夹中编写文件

时间:2012-05-16 12:27:56

标签: android android-ndk

在我的任务中,我需要在Raw文件夹中读取和写入文件。我做了第一个从我的项目中读取文件,现在我想写同一个文件。所以我很容易在该文件中进行任何更新。

On See this How to write files to assets folder or raw folder in android?

我允许用户设置密码,即将传递写入文件,然后读取传递并验证它是否匹配。是否可以在原始文件夹中写入文件

5 个答案:

答案 0 :(得分:3)

不,无法在原始文件夹中写入文件

你应该使用共享优势。

http://samir-mangroliya.blogspot.in/p/android-shared-preferences.html

答案 1 :(得分:3)

“res”文件夹中的任何数据都不可写。您只能从中读取数据。您永远不能将数据写入res文件夹。如果您正在寻找存储用户名和密码凭据的方法,则可以使用Shared Prefrence

以下是如何使用它的示例。

http://marakana.com/forums/android/examples/63.html

修改1

在共享首选项中存储数据是持久的,除非用户使用设置页面中的“清除数据”按钮清除数据。导航到设置 - >管理应用 - >您的应用。在这里,您将看到卸载按钮和清除数据按钮。在android中还有一件事是你永远无法保存持久数据。您不能使用任何数据存储方法(如首选项,sqlite或文件系统)来存储永久数据。如果用户想要擦除数据,则单击“清除数据”按钮,您的数据就会消失。因此,您可以通过这种方式进行编码。

由于这是不可能的,您可以尝试使用您的应用程序的资源,这些资源受写保护且无法写入。因此,它取决于用户,或者您可能必须使用服务器在那里存储数据。

答案 2 :(得分:2)

是的,无法完成。不要尝试在原始目录中写入,而是使用共享首选项更新本地文件系统中的文件,如下所示:

请参阅http://developer.android.com/guide/topics/data/data-storage.html#filesInternal

答案 3 :(得分:2)

“res”文件夹中的任何数据都不可写。您只能从中读取数据。

答案 4 :(得分:-1)

从Android Dev网站上查看本教程: http://developer.android.com/training/basics/data-storage/files.html

String filename = "myfile";
String string = "Hello world!";
FileOutputStream outputStream;

    try {
  outputStream = openFileOutput(filename, Context.MODE_PRIVATE);
  outputStream.write(string.getBytes());
  outputStream.close();
} catch (Exception e) {
  e.printStackTrace();
}