欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  移动技术

Android 使用Sharedpreference存储数据

程序员文章站 2022-09-03 08:58:17
android 使用sharedpreference存储数据。在android中,很多应用都需要存储一些参数,例如在天气app中,在某一次使用时用户添加了若干个城市,当用户下一次点开时也希望之前设置...

android 使用sharedpreference存储数据。在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);
 }
}

布局文件:




 
 
 
 

运行结果:

1.输入信息:

Android 使用Sharedpreference存储数据

2.读取信息:

Android 使用Sharedpreference存储数据