1

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

看到这个如何将文件写入android中的资产文件夹或原始文件夹?

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

4

5 回答 5

4

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

这是一个关于如何使用它的例子。

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

编辑 1

除非用户使用设置页面中的“清除数据”按钮清除数据,否则在共享首选项中存储数据是持久的。导航到 设置->管理应用程序->您的应用程序。在这里,您将看到卸载按钮和清除数据按钮。android 中的另一件事是您将永远无法保存持久数据。您不能使用任何数据存储方法,如首选项、sqlite 或文件系统来永久存储数据。如果用户想擦除数据,他单击“清除数据”按钮,您的数据就消失了。因此,您已经以这种方式进行编码以处理此问题。

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

于 2012-05-16T12:35:11.093 回答
3

不,不可能在原始文件夹中写入文件

您应该为此使用共享偏好。

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

于 2012-05-16T12:29:11.350 回答
2

是的,这是做不到的。不要尝试写入原始目录,而是使用共享首选项更新本地文件系统中的文件,如下面的链接所述:

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

于 2012-05-16T12:34:36.040 回答
2

Any data present in the "res" folder is not writable. You can only read data from it.

于 2012-05-16T13:26:09.840 回答
-1

See this tutorial from the Android Dev site : 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();
}
于 2015-04-24T19:50:00.830 回答