0

所以我想保存用户在他们的 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();
    }
}
4

1 回答 1

0

可能是安卓权限问题。见http://developer.android.com/guide/topics/manifest/manifest-intro.html#perms

或者更好地使用SharedPreferences

于 2013-04-15T07:42:02.813 回答