zoukankan      html  css  js  c++  java
  • android数据的4种存储方式

    Android数据的四种存储方式

        作为一个完成的应用程序,数据存储操作是必不可少的。因此,Android系统一共提供了四种数据存储方式。分别是:SharePreference、SQLite、Content Provider和File。由于Android系统中,数据基本都是私有的的,都是存放于“data/data/程序包名”目录下,所以要实现数据共享,正确方式是使用Content Provider。

    SQLite: SQLite是一个轻量级的数据库,支持基本SQL语法,是常被采用的一种数据存储方式。Android为此数据库提供了一个名为SQLiteDatabase的类,封装了一些操作数据库的API。

    SharedPreference: 除SQLite数据库外,另一种常用的数据存储方式,其本质就是一个xml文件,常用于存储较简单的参数设置。

    File: 即常说的文件(I/O)存储方法,常用语存储大数量的数据,但是缺点是更新数据将是一件困难的事情。

    ContentProvider: Android系统中能实现所有应用程序共享的一种数据存储方式,由于数据通常在各应用间的是互相私密的,所以此存储方式较少使用,但是其又是必不可少的一种存储方式。例如音频,视频,图片和通讯录,一般都可以采用此种方式进行存储。每个Content Provider都会对外提供一个公共的URI(包装成Uri对象),如果应用程序有数据需要共享时,就需要使用Content Provider为这些数据定义一个URI,然后其他的应用程序就通过Content Provider传入这个URI来对数据进行操作。

    二、SharedPreference的使用:

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

        1.根据Context获取SharedPreferences对象

        2.利用edit()方法获取Editor对象

        3.通过Editior对象存储key-value键值对数据

        4.通过commit()方法提交数据

    代码如下:

    public class PreferenceUtil {
        private static String preference = "TestFile_FILE";
        public static String getStringPreference(Context context, String key, String defaultValue) {
            SharedPreferences preferences = context.getSharedPreferences(preference, context.MODE_PRIVATE);
            String test = preferences.getString(key, defaultValue);
            return test;
        }
        public static void setStringPreference(Context context, String key, String value) {
            SharedPreferences preferences = context.getSharedPreferences(preference, context.MODE_PRIVATE);
            SharedPreferences.Editor editor = preferences.edit();
            editor.putString(key, value);
            editor.commit();
        }
    }
  • 相关阅读:
    TStringList 常用操作(转自南山古陶)
    在Delphi中使用Indy控件实现邮件群发
    GSM手机SMS编码解码
    建别人进不了删不掉的文件夹
    播放 wav 文件
    delphi inherited,纯虚
    PDU编码规则
    sql函数
    基于GPRS的LED电子显示屏
    结对编程 队友代码分析
  • 原文地址:https://www.cnblogs.com/ccddy/p/3964929.html
Copyright © 2011-2022 走看看