Android 使用Sharedpreference存储数据
16lz
2021-01-23
在Android中,很多应用都需要存储一些参数,例如在天气app中,在某一次使用时用户添加了若干个城市,当用户下一次点开时也希望之前设置的城市会保存在手机中,以方便直接获取信息。这个时候就需要用到 SharedPreference 类的辅助,利用它存储一些键值对(Key-Value)参数。SharedPreference类时Android提供的一个轻量级的存储类,特别适用于存储软件的各项参数。
具体步骤:
1.获取SharedPreference的对象,通过getSharedPreference(String,int)方法。第一个参数用于指定该存储文件的名称,不用加后缀,第二个参数指定文件的操作模式。一般用MODE_PRIVATE 私有方式存储,其他应用无法访问。
2.设置参数,必须通过一个SharedPreference.Editor对象。存储键值对。只能存放Boolean,Float,Int,Long,String 五种类型。editor.putXxx("key","value")。
3.通过editor.commit()提交数据。也可以通过clean(),remove()清除。
4.数据存储在Android系统的 /data/data/"app package name"/shared_prefs 目录下的一个.xml文件。
简单例子实现SharedPreference存储用户信息的代码:
package com.engineer.shizhibin.sharedprefs;import android.content.SharedPreferences;import android.support.v7.app.AppCompatActivity;import android.os.Bundle;import android.view.View;import android.widget.Button;import android.widget.EditText;import android.widget.TextView;public class MainActivity extends AppCompatActivity { private SharedPreferences mSpf; private EditText in; private Button write; private Button read; private TextView out; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); in = (EditText) this.findViewById(R.id.intext); write = (Button) this.findViewById(R.id.input); read = (Button) this.findViewById(R.id.output); out = (TextView) this.findViewById(R.id.showtext); mSpf = super.getSharedPreferences("test",MODE_PRIVATE); } public void writeInfo(View view) { SharedPreferences.Editor editor = mSpf.edit(); editor.putString("name",in.getText().toString()); editor.commit(); } public void readInfo(View view) { String info = mSpf.getString("name",""); out.setText(info); }}
布局文件:
<?xml version="1.0" encoding="utf-8"?>
运行结果:
1.输入信息:
2.读取信息:
更多相关文章
- android解析XML文件的三方法之SAX
- android文件下载与保存
- android 扫描文件(sdcard添加新的音乐文件时候后,可扫描到)
- Android stutio 中怎么将XML中文件快速findById——Android Layo
- init进程 && 解析Android启动脚本init.rc && 修改它使不启动andr
- Android Developers:保存文件
- Android中读取assets目录下的文件详细介绍
- android studio导入gbk编码的工程文件导致的乱码问题
- gen文件无法生成