Android数据存储之SharedPreferences

SharedPreferences是一种轻型的数据存储方式,基于XML文件存储key-value pairs键值对数据,通常用来存储一些简单的配置信息。SharedPreferences对象本身只能获取数据而不支持存储和修改,存储修改是通过Editor对象实现。每一个 SharedPreferences 文件都是由framework管理的并且可以是私有或者可共享的。

数据存储

新建一个Android项目,在MainActivity的onCreate方法中,调用getSharedPreferences方法,需要注意的是,如果已经存在文件则不会新建,如果键值对不存在则会继续添加到里面,如果存在名字相同,值不同则会覆盖原有的值。

        Context context=MainActivity.this;
        SharedPreferences shared=context.getSharedPreferences("Test", MODE_PRIVATE);
        Editor editor=shared.edit();
        editor.putString("Name", "FlyElephant");
        editor.putInt("Age", 24);
        editor.putBoolean("IsMarried", false);
        editor.commit();

 存储完之后这个时候之后就发现,文件夹下多了一个Test.xml,全路径应该是data/data/com.example.preference/shared_prefs/Test.xml

导出之后发现xml中内容为:

<?xml version=‘1.0‘ encoding=‘utf-8‘ standalone=‘yes‘ ?>
<map>
<string name="Name">FlyElephant</string>
<int name="Age" value="24" />
<boolean name="IsMarried" value="false" />
</map>

显示数据

设置一个按钮点击事件loadData

   public void loadData(View view){
    	SharedPreferences shared=MainActivity.this.getSharedPreferences("Test", MODE_PRIVATE);
        EditText editText=(EditText) findViewById(R.id.edit_sharedName);
        editText.setText(shared.getString("Name", ""));
        EditText editAge=(EditText) findViewById(R.id.edit_sharedAge);
        String ageString=String.valueOf(shared.getInt("Age", 0));
        editAge.setText(ageString);
    }

 数据显示结果:

删除节点

点击第二个按钮,执行的事件:

   public void deleteNode(View view) {
    	SharedPreferences shared=MainActivity.this.getSharedPreferences("Test", MODE_PRIVATE);
    	Editor editor=shared.edit();
    	editor.remove("Age");
    	editor.commit();
    	Toast.makeText(MainActivity.this, "删除成功",Toast.LENGTH_SHORT).show();
	}

效果如下:

删除文件

根据路径,调用一下File就直接删除了这个文件:

    public void deleteFile(View view){
    	String pathString="/data/data/"+getPackageName()+"/shared_prefs";
    	File file=new File(pathString,"Test.xml");
    	Log.i("com.example.preference",pathString);
    	if (file.exists()) {
			file.delete();
		}
      	Toast.makeText(MainActivity.this, "文件删除成功",Toast.LENGTH_SHORT).show();
    }

  Android初学中,白天公司搞.NET,晚上回来搞Android,感觉回到了大学,感觉挺好~

时间: 2025-01-02 04:59:57

Android数据存储之SharedPreferences的相关文章

Android数据存储-通过SharedPreferences实现记住密码的操作

在Android中登陆中,为了实现用户的方便,往往需要根据用户的需要进行记住密码的操作,所以,在Android数据存储中SharedPreferences恰恰可以实现这一点 下面,小编将带领大家通过SharedPreferences实现记住密码的操作 一.首先:介绍下什么是SharedPreferences? SharedPreferences是Android平台上一个轻量级的存储类,用来保存应用的一些常用配置. 二.介绍了SharedPreferences,我们将通过记住SharedPrefe

Android 数据存储之 SharedPreferences储存

------------------------------------------SharedPreferences存储-------------------------------------------- SharedPreferences 使用键值对方式来存储数据的.当保存一条数据的时候,需要给这条数据提供一个对应的键,这样在读取数据的时候就可以通过这个键把相应的值取出. SharedPreferences 支持多种不同数据类型的存储,可以按照需要取出数值型,或者字符型的数据. ----

Android数据存储之SharedPreferences浅析

SharedPreferences 是 Android 数据存储方式中的一种,特别适合用来存储少量的.格式简单的数据,比如应用程序的各种配置信息,如是否打开音效,是否开启震动等等. SharedPreferences 存储数据的位置和格式 SharedPreferences 将数据以键值对的形式,存储在 /data/data/<package name>/shared_prefs 目录下面,以 XML 的格式保存,该 XML 文件的根元素是 <map.../>,该元素里每个子元素代

Android数据存储之SharedPreferences存储

安卓系统为应用提供了系统级的配置存储方案,它就是靠SharedPreferences接口来实现的,该接口存储的所有信息都是以名值对的形式保存,但其保存的数据类型也仅限于基本数据类型,如字符串.整形.布尔型等.这些配置最后会保存在一个XML文件中,每次打开应用时,这些保存的信息就会被加载进来,我们也可以在“管理应用程序”中将这些缓存数据清除. SharedPreferences接口的常用方法如下: SharedPreferences接口类方法 No 方法 类型 描述 1 public abstra

【Android数据存储】SharedPreferences

1.概述 SharedPreferences 类提供了一个通用框架,以便您能够保存和检索原始数据类型的永久性键值对. 您可以使用 SharedPreferences 来保存任何原始数据:布尔值.浮点值.整型值.长整型和字符串. 此数据将跨多个用户会话永久保留(即使您的应用已终止亦如此). 要获取应用的 SharedPreferences 对象,请使用以下两个方法之一: getSharedPreferences() - 如果您需要多个按名称(使用第一个参数指定)识别的首选项文件,请使用此方法. g

Android 数据存储之 SharedPreferences

SharedPreferences SharedPreferences也是一种轻型的数据存储方式,它的本质是基于XML文件存储key-value键值对数据,通常用来存储一些简单的配置信息.  其存储位置在/data/data/<包名>/shared_prefs目录下.SharedPreferences对象本身只能获取数据而不支持存储和修改,存储修改是通过Editor对象实现.  实现SharedPreferences存储的步骤如下: 一.根据Context获取SharedPreferences

Android简易数据存储之SharedPreferences

Andorid提供了多种数据存储的方式,例如前面说到的“Android数据存储之SQLite的操作”是用于较复杂的数据存储.然而,如果有些简单的数据存储如果采用SQLite的方式的话会显得比较笨重.例如:记录用户是否访问过APP的欢迎页面之类的数据,如果采用SQLite的话会显得没必要而且费时费力.因此Andorid提供了另一种存储简单数据的方式SharedPreferences.SharedPreferences是一个轻量级的数据存储方式,其仅支持boolean.int.long.float.

Android——数据存储(四种方式之一)SharedPrefereces

Android--数据存储(四种方式) 1.SharedPrefereces   轻量级.XML  存储文件名,数据保存在data/data/basepackage/shared_prefs/myopt.xml中   实例-收藏-记住密码自动登录 //一种轻量级的数据存储方式//通过KEY 存入数据--putxxxx(key,value) 取出数据--getxxxx(key  default)   2.读写SD卡  SD的根目录  适用于数据流读写 3.SQLite  轻量级.dp文件多用于手机

Android 数据存储之 SQLiteDatabase

? 惯例:安卓的三种本地的典型数据存储方式 SharedPreferences 以文件格式保存在本地存储中 SQL数据库 本节学习的是 SQLiteDatabase 的使用方式,而在使用方面也只是展示了如何创建数据库,创建表,写入数据.然后查询出来. 因为之前在 word 中操作以表格的形式插入多行代码时遇到了无法高亮,模糊不清的状况,所以本节并不会写出使用方法. 详情请直接访问我的 GitHub 项目:https://github.com/Chenstyle/AndroidTraining 具