Android 常见数据存储方式有以下三种:1.使用SharedPreferences存储数据:其本质就是一个xml文件,可以保存字符串、布尔值、基础数据、集合等数据。常用于存储较简单的参数设置。
2.File文件存储数据:即常说的文件(I/O)存储方法,常用语存储大数量的数据。分为:Android系统自带的存储空间、外部储存设备(SDCard等)。
3.SQLite数据库存储数据:SQLite是一个轻量级的数据库,支持基本的SQL语法,是常被采用的一种数据存储方式。 Android为此数据库提供了一个名为SQLiteDatabase的类,封装了一些操作数据库的api。
SharedPreference,File,SQLiteDatabase这三种方式分别对应的目录为:
SharedPreference:/data/data/Package Name/shared_prefs
File手机存储:/data/data/Package Name/files
SDCard:/sdcard
SQLiteDatabase:/data/data/Package Name/database
可通过Android Studio右下角的“Device File Explorer”查看文件存储目录:
Device File Explorer
SharedPreferences存储数据// 1、获取SharedPreferences的实例
// name 会帮助我们生成一个xml文件
SharedPreferences sp = getSharedPreferences("config", MODE_PRIVATE);
// 2、获取sp的编辑器
SharedPreferences.Editor edit = sp.edit();
edit.putString("name", "wangfang");// 第一个参数是key,第二个参数是value
edit.putString("pwd", "111111");
// 3、提交edit保存数据
edit.commit();
// 在config.xml中获取存储的数据
String name = sp.getString("name", "");// 第一个参数是key,如果找不到这个值第二个参数是默认值" +
String pwd = sp.getString("pwd", "");
System.out.println("name="+name+"\n"+"pwd="+pwd);
File文件存储数据
1.将数据存储在手机存储中:public static boolean saveInfo(Context context, String text) {
try {
// 获取文件保存的路径
String path = context.getFilesDir().getPath();
// 通过上下文获取FileOutputStream 此行代码相当于上面的三行代码
FileOutputStream fos = context.openFileOutput("userinfo.txt", 0);
fos.write(text.getBytes());
fos.close();
return true;