0

我试图在 onPause 方法中将字符串保存到 txt 文件,然后将保存的字符串设置为 textview,但我遇到了问题。我不需要在 onResume 方法中设置字符串。主要问题是让 IO 在 Android 中工作,谢谢。

String fileNameString="savedString.txt";
String textToSave = "PLEASE SAVE ME";
EditText editText;    

public void onResume() {
    super.onResume();
    TextView textViewString = (TextView)findViewById(R.id.item);
    try {
        InputStream in = openFileInput(fileNameString);
        if (in!=null) {
            InputStreamReader tmp = new InputStreamReader(in);
            BufferedReader reader=new BufferedReader(tmp);
            String str;
            StringBuffer buf=new StringBuffer();

            while ((str=reader.readLine()) != null) {
                buf.append(str+"\n");
            }
            textViewString.setText(str);
            in.close();
        }
    }
    catch (java.io.FileNotFoundException e) {
    }
    catch (Throwable t) {
        Toast
            .makeText(this,"Exception: "+t.toString(),2000)
            .show();
    }
}
public void onPause() {
    super.onPause();
    try {
        OutputStreamWriter out = new OutputStreamWriter(openFileOutput(fileNameString,0));
        out.write(textToSave);
        out.close();
    }
    catch (Throwable t) {
        Toast
            .makeText(this, "Exception: " +t.toString(), 2000)
            .show();
    }
}
4

1 回答 1

3

如果你想让变量在会话中持久化,你最好使用SharedPreference而不是将它存储到文本文件中。

于 2011-11-01T16:06:12.460 回答