是的,我一直在努力寻找解决方案,但由于某种原因它无法正常工作。
简而言之,我想做的是将用户输入的每个输入字符串保存到文件中。每次再次创建活动时,我都想将这些字符串重新输入到对象的新实例中。
这段代码是我用来创建文件并从中读取信息的代码,用于活动的 onCreate() 方法
try {
String brain = "brain";
File file = new File(this.getFilesDir(), brain);
if (!file.exists()) {
file.createNewFile();
}
BufferedReader in = new BufferedReader(new FileReader(file));
String s; // This feeds the object MegaAndroid with the strings, sequentially
while ((s = in.readLine()) != null) {
MegaAndroid.add(s);
}
in.close();
} catch (IOException e) {
e.printStackTrace();
}
之后,每次用户输入一些文本时,字符串都会保存到文件中:
try {
String brain = "brain";
File file = new File(this.getFilesDir(), brain);
if (!file.exists()) {
file.createNewFile();
}
BufferedWriter out = new BufferedWriter(new FileWriter(file));
out.write(message); // message is a string that holds the user input
out.close();
} catch (IOException e) {
e.printStackTrace();
}
然而,由于某种原因,每次应用程序被终止时,数据都会丢失。我究竟做错了什么?
编辑:另外,如果我要从另一个班级访问这个文件,我该怎么办?