Android四种存储方式 sharedpreference,file,SQlite,contentprov

Android四种存储方式: sharedpreference,file,SQlite,contentprovider。

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

本文源码工程下载地址:

具体下载目录在 /pub/Android源码集锦/2011年/12月/Android四种存储方式/

实现SharedPreferences存储的步骤如下:

一、根据Context获取SharedPreferences对象

二、利用edit()方法获取Editor对象。

三、通过Editor对象存储key-value键值对数据。

四、通过commit()方法提交数据。

具体实现代码如下:实现存储,读取,清除,删除

效果图:

Android四种存储方式 sharedpreference,file,SQlite,contentprov

首先创建:// 首先拿到sharedpreference对象

      mShared =getSharedPreferences(SHARED_MAIN_XML, MODE_PRIVATE);

存储: 

  1. private void write() {// 存入数据   
  2.       savename = name.getText().toString().trim();  
  3.       saveage = Integer.valueOf(age.getText().toString().trim());  
  4.       Editor editor = mShared.edit();  
  5.       editor.putString("name", savename);  
  6.       editor.putInt("age", saveage);  
  7.       // 保证操作的事务完整性   
  8.       editor.commit();  
  9.    }  

阅读:

  1. private String read() {// 从数据库里读取数据   
  2.       namecontent = mShared.getString("name""数据库里没有存储姓名");  
  3.       agecontent = mShared.getInt("age"0);  
  4.       String reading = "姓名:" + namecontent + "\n年龄:" + agecontent;  
  5.       return reading;  
  6.    }  

清除内容:

  1. private void clear() {//清除内容   
  2.       /** 开始清除SharedPreferences中保存的内容 **/  
  3.       Editor editor = mShared.edit();  
  4.       editor.remove("name");  
  5.       editor.remove("age");  
  6.       editor.commit();  
  7.    
  8.    }  

删除文件:

  1. private void delete() {//删除文件   
  2.       /** 删除SharedPreferences文件 **/  
  3.       Filefile = new File("/data/data/cn.csdn.activity" + "/shared_prefs/"  
  4.             + SHARED_MAIN_XML + ".xml");  
  5.       if (file.exists()) {  
  6.          file.delete();  
  7.          Toast.makeText(this"删除成功", Toast.LENGTH_LONG).show();  
  8.       }  
  9.    }  

haredPreferences对象与SQLite数据库相比,免去了创建数据库,创建表,写SQL语句等诸多操作,相对而言更加方便,简洁。但是SharedPreferences也有其自身缺陷,比如其职能存储boolean,int,float,long和String五种简单的数据类型,比如其无法进行条件查询等。所以不论SharedPreferences的数据存储操作是如何简单,它也只能是存储方式的一种补充,而无法完全替代如SQLite数据库这样的其他数据存储方式。

相关推荐