安卓数据保存之——内部存储

安卓内不保存数据的机制

核心代码段:

public class MainActivity extends Activity {
    private  EditText editText;
    private Button btn;
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        btn = (Button)findViewById(R.id.save);
        editText = (EditText)findViewById(R.id.edit);

        //读取上次保存的文件
        readSaveText();

        //保存数据的事件
        btn.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                saveCurrentText();
            }
        });
    }

    private void saveCurrentText() {

        try {
            OutputStream os = openFileOutput("data",MODE_PRIVATE);
            os.write(editText.getText().toString().getBytes());
            os.flush();
            os.close();
            //给用户一个反馈
Toast.makeText(this, "保存成功", Toast.LENGTH_LONG).show();
        } catch (Exception e) {
            e.printStackTrace();
        }
        Toast.makeText(this, "保存失败", Toast.LENGTH_SHORT).show();
    }
    private void readSaveText() {

        try {
            InputStream is = openFileInput("data");
            byte[] bytes = new byte[is.available()];
            is.read(bytes);
            is.close();
            String text = new String(bytes,"utf-8");
            editText.setText(text);
        } catch (Exception e) {

            e.printStackTrace();
        }

    }

这里写图片描述

当点击确定按钮之后用于数据保存

源代码
http://pan.baidu.com/s/1dFl4msh

发布了42 篇原创文章 · 获赞 24 · 访问量 8万+

猜你喜欢

转载自blog.csdn.net/zhang245754954/article/details/53648508