我正在尝试让我的程序将其当前状态保存在内部存储器中,以便我可以在下次加载时检索它。 但似乎我无法让它工作,我的应用程序一直在崩溃启动。
private File statoContatori = new File(getFilesDir(), "statoContatori");
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
inizializeCounters();
}
private void inizializeCounters() {
Scanner in = null;
try {
in = new Scanner(statoContatori);
while (in.hasNext())
{
String idContatore = in.next();
String nomeContatore = in.next();
String valore = in.next();
if (idContatore.equals("contatore_1"))
{
initializeContatore(R.id.contatore_1_label, R.id.contatore_1, nomeContatore, valore);
}
else if (idContatore.equals("contatore_2"))
{
initializeContatore(R.id.contatore_2_label, R.id.contatore_2, nomeContatore, valore);
//There are a couple more IFs in here...
}
} catch (FileNotFoundException e) {
creaFileStatoContatori();
}
finally {
in.close();
}
}
private void creaFileStatoContatori() {
PrintWriter out = null;
try {
out = new PrintWriter(statoContatori);
out.println("contatore_1\tcontatore_1\t0");
out.println("contatore_2\tcontatore_2\t0");
out.println("contatore_3\tcontatore_3\t0");
out.println("contatore_4\tcontatore_4\t0");
out.println("contatore_5\tcontatore_5\t0");
} catch (FileNotFoundException e) {
e.printStackTrace();
}
finally {
out.close();
}
inizializeCounters();
}
所以基本上我要做的是: 如果文件存在 - >加载文件 如果文件不存在 - >使用标准配置创建文件 - >加载文件 我做错了什么?