到目前为止,我已经在我的资产文件夹中创建了一个文本文件,我可以很好地阅读它并完成它应该做的事情。当我使用以下内容写信时:
FileOutputStream fos = openFileOutput(FILENAME, Context.MODE_PRIVATE);
fos.write(("0").getBytes());
fos.close()
有用。但是,当我关闭我的应用程序并稍后重新打开它时,它不记得我将其更改为的任何内容。
有任何想法吗?
assets 或 raw 中的文件旨在为只读文件,因此将其复制到新位置(如 in Environment.getDataDirectory()
),然后您应该能够对其进行写入。
我认为这会引发某种类型的异常你有一个空的 catch 块吗?至少你应该使用,e.printStackTrack()
否则你的应用程序将默默地失败......
try {
FileOutputStream fos = openFileOutput(FILENAME, Context.MODE_PRIVATE);
fos.write(("0").getBytes());
fos.close();
} catch (Exception e) {
e.printStackTrace();
}
我想你只是忘记在写完之后调用flush
FileOutputStream fos = openFileOutput(FILENAME, Context.MODE_PRIVATE);
fos.write(("0").getBytes());
fos.flush();
fos.close();