Androidで非常に簡単なアプリケーションを保存/ロードしようとしています。ファイルが onCreate() メソッドに存在するかどうか、および onCreate に設定をロードするかどうかを確認することが考えられます。これはこれを行うのに適切な機能ですか? 保存は onPause() 関数で行われます。
私がそれを行う方法は、FileOutputStream と FileInputStream を使用することです。
しかし、私のコードはどのように見えますか? 現在、私はこれを持っています:
if (new File(FILENAME).isFile()) {
FileInputStream fis = null;
try {
fis = openFileInput(FILENAME);
fis.read();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
numOfEpisode = Integer.parseInt(fis.toString());
numOfSeason = Integer.parseInt(fis.toString());
}
テスト時にファイルがそこにあることはわかっているので、まだ例外を処理していないという事実は無視してください。
protected void onPause() {
try {
FileOutputStream fos = openFileOutput(FILENAME,
Context.MODE_PRIVATE);
fos.write(numOfEpisode);
fos.write(numOfSeason);
fos.close();
} catch (IOException e) {
e.printStackTrace();
}
}
現在、アプリを閉じると(onPause()が呼び出されたとき)、アプリでエラーが発生します。誰かが私に理由を教えてもらえますか?
また、FileOutputStream.write() がステートメントを書き込む方法をどのように知ることができますか? これは FIFO ですか、それとも LIFO ですか?