android5.1移动存储,Android的移动存储解决方案之SharedPreferences

这篇博客介绍了Android中如何使用SharedPreferences来保存和读取key-value数据。通过getSharedPreferences、edit、putXxx和commit方法,实现了数据的持久化存储。当应用停止时,数据会被保存到XML文件中,并在下次启动时自动加载,提供了一种简单快捷的数据存储解决方案。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

搞Android有一段时间了,但是并没写过有关Android的博客,今天给大家介绍一下SharedPreferences。

使用SharedPreferences保存key-value对的步骤如下:

(1)使用Activity类的getSharedPreferences方法获得SharedPreferences对象,其中存储key-value的文件的名称由getSharedPreferences方法的第一个参数指定。

(2)使用SharedPreferences接口的edit获得SharedPreferences.Editor对象。

(3)通过SharedPreferences.Editor接口的putXxx方法保存key-value对。其中Xxx表示不同的数据类型。例如:字符串类型的value需要用putString方法。

(4)通过SharedPreferences.Editor接口的commit方法保存key-value对。commit方法相当于数据库事务中的提交(commit)操作。

具体的存入和获取操作,我已经把代码贴出来了,你们可以看一下。

1 package org.sharedPreferences.test;2 3 import android.app.Activity;4 import android.content.SharedPreferences;5 import android.os.Bundle;6 import android.widget.EditText;7 import android.widget.RadioGroup;8 9 publicclassShaPreTestActivity extends Activity{10 /** Called when the activity is first created.*/11 privatefinal String PREFERENCES_NAME="survey";12 privateEditText etName;13 privateEditText etAge;14 privateRadioGroup sex;15 16 @Override17 publicvoidonCreate(Bundle savedInstanceState) {18 super.onCreate(savedInstanceState);19 setContentView(R.layout.main);20 etName=(EditText)findViewById(R.id.name);21 etAge=(EditText)findViewById(R.id.age);22 sex=(RadioGroup)findViewById(R.id.sex);23 24 SharedPreferences preferences=getSharedPreferences(PREFERENCES_NAME, Activity.MODE_PRIVATE);25 etName.setText(preferences.getString("name",""));26 etAge.setText(preferences.getString("age",""));27 sex.check(preferences.getInt("sex",-1));28 }29 30 @Override31 protectedvoidonStop() {32 //获得SharedPreferences对象33 SharedPreferences MyPreferences=getSharedPreferences(PREFERENCES_NAME, Activity.MODE_PRIVATE);34 //获得SharedPreferences.Editor对象35 SharedPreferences.Editor editor=MyPreferences.edit();36 //保存组件中的值37 editor.putString("name", etName.getText().toString());38 editor.putString("age", etAge.getText().toString());39 editor.putInt("sex", sex.getCheckedRadioButtonId());40 //提交保存的结果41 editor.commit();42 super.onStop();43 }44 }

代码写好后,你运行程序,你会发现,你输入完退出后,当你再次进入该程序的时候,你就会发现,你上次写的东东还在上面,而且是一模一样。

93401edb5af69c30653f736ca90f1f9f.png

并且你会在data目录下找到一个名字叫survey.xml文件:

83c9df41611f8818edf82ea1022fe596.png

然后把它导出来,打开之后的格式以及内容如下所示:

1 <?xml version='1.0'encoding='utf-8'standalone='yes'?>2 3 4 name5 106 7

从上面的内容可以看出,它是把那些字段都保存到了xml文件中,当你开启这个应用的时候,它会自动的去data下面找到相应的xml并且把相应的数据显示出来。

这是我做的有关SharedPreferences例子,后面我还会介绍一些有关数据库的例子,希望大家继续关注。(本来我是想上传例子的,但是找了半天也没找到,你们如果谁知道,请告我一声,谢谢!)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值