Android 讲解:存储 (1)

Android 常用的存储方式有3种。前两种基本在Activity 子类类中使用。

  1. 文件存储
  2. SharedPreferences 对象存储
  3. SQLite(在Android 讲解:存储 (2))

文件存储


文件存储分为字节存储,和字符存储。
在Activity 可以使用以下代码获取输入输出流。

输入流

openFileInput(fileName);
fileName 是文件的名称。

输出流

openFileOutput(fileName, MODE);
MODE 是打开的模式,在4.2之前有四种打开方式,现在有两个,其他两个容易引起安全漏洞。
MODE_PRIVATE(每次打开都新建),MODE_APPEND(追加内容)。

其他

在获取文件的输入输出流时,fileName 只能为文件的名称,不能带有路径。
文件的存储位置在:/data/data/<packageName>/files/fileName

SharedPrefernces 对象存储


SharedPrefernces 是Android 中的一个对象,通过这个对象,可以把数据持久化到XML文件中。


         SharedPreferences sf = getPreferences(MODE_APPEND);
         Editor editor =  sf.edit();

         //添加数据
         editor.putString("username", "admin");
         editor.putString("password", "123456");
         editor.commit();


         //获取数据
         String username = sf.getString("username", null);
         String password = sf.getString("password", null);

         Log.i(tag, "username:" + username);
         Log.i(tag, "password:" + password);

SharedPrefernces 对象有3 种方式获取:

  1. getPreferences(MODE);
  2. PreferenceManager.getDefaultSharedPreferences(Context);
  3. context.getSharedPrefernces(fileName, MODE);

1. getPreferences(MODE);

getPreferences(MODE)

MODE 获取方式,MODE_PRIVATE(每次打开都新建),MODE_APPEND(追加内容)。

当某个Activity 第一次使用这个方法时,则会在:/data/data/<packageName>/shared_prefs/fileName 生成一个文件。

2. PreferenceManager.getDefaultSharedPreferences(context);

PreferenceManager.getDefaultSharedPreferences(Context);

context 是一个Context 对象,一般为Activity 对象,此获取方法的获取模式是固定的MODE_PRIVATE。

生成的存储文件:/data/data/<packageName>/shared_prefs/fileName
fileName<packageName> + _preferences,packageName 是应用程序包名。

4. context.getSharedPrefernces(fileName, MODE);

context.getSharedPrefernces(fileName, MODE); 是比较灵活的一个,可以通过文件名获取,并且也可以知道获取模式。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值