そのため、ユーザーが EditText に書いたものをすべて保存して、次回のために保存したいと考えています。このまったく同じコードは Java プロジェクトでは機能しますが、Android プロジェクトでは機能しません。
コードは以下のとおりです。
PrintWriter out = new PrintWriter("hi"); 常に FileNotFoundException e を返します。
Java プロジェクトでは、このコードは PrintWriter out = new PrintWriter("hi"); 「hi」という名前の新しいファイルを作成しますが、Android プロジェクトは新しいファイルを作成せず、代わりにエラーを返します。アプリが後で再び開いたときに開かれる EditText からの文字列は保存されません。
誰でもこの問題の解決策を持っていますか?
public void onCreate(blablabla)
{blablabla
try {
FileReader reader = new FileReader ("hi");
Scanner in = new Scanner(reader);
String line = in.nextLine();
mEditText.setText(line);
in.close();
} catch (FileNotFoundException e) {
mEditText.setText("");
Toast.makeText(mContext, "null!!", Toast.LENGTH_SHORT).show();
}
@Override
protected void onDestroy()
{
super.onDestroy();
// The activity is about to be destroyed.
try {
PrintWriter out = new PrintWriter("hi");
out.write(mEditText.toString());
out.close();
} catch (FileNotFoundException e) {
Toast.makeText(mContext, "Can't save", Toast.LENGTH_SHORT).show();
}
}