Android中的数据存取(一)Preference

程序是数据的输入、处理和输出的过程。大容量的数据存取不能仅仅依靠内存的空间,我们必须把他们以文件的形式保存在磁盘等持久的存储介质中。Android作为一种手机程序,不可避免的需要用到数据的存储,有以下几种存取数据的方式:

Preference(配置)、File(文件)、SQLite数据网络。首先先谈谈Preference

Preference是一种轻量级的数据存取方法,应用场合主要是数据比较少的配置信息。它以“键-值”对的方式将数据保存在一个XML配置文件中。

用到的接口有SharedPreferences和其中的内部接口SharedPreferences.Editor

调用方法:getSharedPreferences(String name,int mode)  第二个参数是操作模式,有三种 MODE_PRIVATE(私有)、MODE_WORLD_READABLE和MODE_WORLD_WRITEABLE.具体代码如下

package com.example.data;

import android.os.Bundle;
import android.app.Activity;
import android.content.SharedPreferences;
import android.view.Menu;
import android.widget.EditText;

public class MainActivity extends Activity {
    private EditText msg;//声明EditText实例
    private static final String Temp_SMS="temp_sms";

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);//设置Activity界面布局
        setContentView(R.layout.activity_main);
        msg=(EditText)findViewById(R.id.msg);
        SharedPreferences pre=getSharedPreferences(Temp_SMS, MODE_WORLD_READABLE); //实例化EditText
        String content=pre.getString("sms_content", "")//获得内容
        msg.setText(content);
    }
    protected void onStop(){
        super.onStop();
        SharedPreferences.Editor editor=
        getSharedPreferences(Temp_SMS, MODE_WORLD_WRITEABLE).edit();
//获得信息内容并添加到编辑器
        editor.putString("sms_content",msg.getText().toString());
        editor.commit();//提交编辑内容
    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.activity_main, menu);
        return true;
    }

}

 

 

 

 

posted @ 2012-11-30 13:01  小蚊子子  阅读(267)  评论(0编辑  收藏  举报