今天做了对SharedPreferences做了简单的测试,并分享 sharePreferences 使用:
例子1.基本的存放和取得。
SharedPreferences share = getSharedPreferences("userPhoneNum",MODE_WORLD_WRITEABLE);
//可以
Editor edit = share.edit();
edit.putString("name", "dyc");
edit.putBoolean("flag", true);
edit.commit();
读成功!
System.out.println(share.getString("name", ""));
System.out.println(share.getBoolean("flag", false));
<?xml version='1.0' encoding='utf-8' standalone='yes' ?>
<map>
<string name="name">dyc</string>
<boolean name="flag" value="true" />
</map>
例2:
SharedPreferences share = getSharedPreferences("userPhoneNum",0);
//可以
Editor edit = share.edit();
edit.putString("name", "yancheng");
edit.putString("company", "funo");
edit.putBoolean("flag", true);
edit.commit();
//加入成功
SharedPreferences.Editor localEditor = share.edit();
localEditor.putBoolean("flag", false);
localEditor.putString("name", "you");
localEditor.putString("name1", "IBM");
localEditor.commit();
得到share文件 :
<?xml version='1.0' encoding='utf-8' standalone='yes' ?>
<map>
<string name="name1">IBM</string>
<string name="name">you</string>
<string name="company">funo</string>
<boolean name="flag" value="false" />
</map>
显然在这里看到了覆盖的效果。
例3.
SharedPreferences share = getSharedPreferences("userPhoneNum",MODE_WORLD_READABLE);
//可以
Editor edit = share.edit();
edit.putString("name", "dyc");
edit.putBoolean("flag", true);
edit.commit();
读成功!
System.out.println(share.getString("name", ""));
System.out.println(share.getBoolean("flag", false));
<?xml version='1.0' encoding='utf-8' standalone='yes' ?>
<map>
<string name="name">dyc</string>
<boolean name="flag" value="true" />
</map>
只是变化了mode类型。根据字面意思就可以了解它的作用了。
例4.
SharedPreferences share = getSharedPreferences("userPhoneNum",MODE_WORLD_READABLE);
//可以
Editor edit = share.edit();
edit.putString("name", "yancheng");
edit.putString("company", "funo");
edit.putBoolean("flag", true);
edit.commit();
//加入成功
SharedPreferences.Editor localEditor = share.edit();
localEditor.putBoolean("flag", false);
localEditor.putString("name", "you");
localEditor.putString("name1", "IBM");
//这里加入这个方法
localEditor.clear();
localEditor.commit();
结果:
<?xml version='1.0' encoding='utf-8' standalone='yes' ?>
<map>
<string name="name1">IBM</string>
<boolean name="flag" value="false" />
<string name="name">you</string>
</map>
这里想和例2做个比较来说明。SharedPreferences的生成点实在commit时完成。
所以使用clear清除的是上次commit的内容。暂时先记录到这里。
分享到:
相关推荐
DataStore 以异步、一致的事务方式存储数据,克服了 SharedPreferences(以下统称为SP)的 一些缺点。 DataStore 基于 Kotlin 协程和 Flow 实现,并且可以对 SP 数据进行迁移,旨在取代 SP 。 DataStore 提供了两种...
嵌入式Android项目设计与开发 第六章 数据存储 ——SharedPreferences 2 SharedPreferences 键值对概念: 某一个数据都由一个键和一个值构成,键代表数据的名称,它是全局唯一的。具体的数据内容存放在值中。 键值对...
Android项目开发中使用的数据存储方式有:网络存储、sqlite存储、File存储和SharedPreferences存储,四种存储方式对应的Demo别人是NetworkDemo、SqliteDemo、FileDemo和SharedPreferencesDemo,根据应用的场景选择...
SharedPreferences是一种轻型的数据存储方式,它的本质是基于XML文件存储key-value键值对数据,通常用来存储一些简单的配置信息。其存储位置在/data/data/<包名>/shared_prefs目录下。SharedPreferences对象本身只能...
sharedpreferences Demo
SharedPreferences文件在不同应用之间数据共享
android应用SharedPreferences_Demoandroid应用SharedPreferences_Demoandroid应用SharedPreferences_Demoandroid应用SharedPreferences_Demoandroid应用SharedPreferences_Demoandroid应用SharedPreferences_Demo...
一个SharedPreferences工具类 在工程根目录build.gradle添加jitpack: allprojects { repositories { maven { url "https://jitpack.io" } } } 在使用AnyPref的模块中添加: dependencies { compile '...
利用SharedPreferences设置初始密码,并修改密码。详见http://blog.csdn.net/chenfengdejuanlian/article/details/46331031
使用SharedPreferences保存数据
SharedPreferences存取list集合
使用SharedPreferences保存key-value对
SharedPreferences可以让不同程序之间的数据进行共享,当两个应用程序之间数据需要传递或者共享时,可以使用这个方法。本文会使用两个例子SharePreferenceWrite和SharePreferenceRead,前者为一个写...
介绍了SharedPreferences存储复杂的对象源码!
android学习SharedPreferences使用demo源代码
Android SharedPreferences应用 实现本地注册登陆 功能简单易懂(实例) http://blog.csdn.net/h1028962069/article/details/9129851 文章代码
Android自学笔记-8-Android数据存储1:文件、SharedPreferences和获取sd卡信息
SharedPreferences是Android提供的一个轻量级存储类,经常用于保存软件设置参数。存放的格式为xml,文件存放在 /data/data/<package name>/shared_prefs下。