`
hemowolf
  • 浏览: 155007 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

android学习笔记之十一数据存储(Shared Preferences、SQLite)

阅读更多

android数据的存储方式可以用标准的j2se的api文件存储和网络存储方式.以下是android的其他两种存储方式

1,Shared Preferences是一个简单键值对的xml格式的存储方式
     a,读取
        getPreferences (int mode) 返回SharedPreferences实例
 mode Activity.MODE_PRIVATE, Activity.MODE_WORLD_READABLE, Activity.MODE_WORLD_WRITEABLE
       
 getString (String key, String defValue) 获取数据
     b,写数据
       通过SharedPreferences(必须为MODE_PRIVATE或MODE_WORLD_WRITEABLE)实例的edit()返回Editor对象
       Editor.putString (String key, String value) 设置值
       Editor.commit() 提交保存
       Editor.clear()  清除所有数据
       Editor.remove (String key) 移除某一值

 

2,SQLite
    a,SQLiteDatabase类
     1),打开/关闭数据库
       openOrCreateDatabase(String name, int mode, CursorFactory factory)返回SQLiteDatabase实例 //数据库不存在则新建一个
       mode Context.MODE_PRIVATE, Context.MODE_WORLD_READABLE, Context.MODE_WORLD_WRITEABLE, Context.MODE_PRIVATE

       SQLiteDatabase类.close()关闭数据库
     2),执行数据库操作
       SQLiteDatabase.execSQL (String sql) //执行Sql语句
 
       long insert (String table, String nullColumnHack, ContentValues values)
       int update (String table, ContentValues values, String whereClause, String[] whereArgs)
       int delete (String table, String whereClause, String[] whereArgs)
       其中ContentValues是一个键值对,通过ContentValues.put方法设置列名和列值

       Cursor rawQuery (String sql, String[] selectionArgs) //执行的是语句
       Cursor query (String table, String[] columns, String selection, String[] selectionArgs, String groupBy, String having, String orderBy)
       Cursor query (String table, String[] columns, String selection, String[] selectionArgs, String groupBy, String having, String orderBy, String limit)
       Cursor query (boolean distinct, String table, String[] columns, String selection, String[] selectionArgs, String groupBy, String having,
              String orderBy, String limit)
       其中:
    columns 显示列
    selection 条件where部分
    selectionArgs ?替换符号.如selection为name =? and age=?那么selectionArgs可以为 new  String[]{"abc","20"}
      
       Cursor类
         int getCount() 返回记录数
  boolean isClosed () 判断关闭
  boolean isFirst ()
  boolean isLast ()

  boolean moveToFirst ()
  boolean moveToLast ()
  boolean moveToNext ()
  boolean moveToPosition (int position)
  boolean moveToPrevious ()

  boolean isNull (int columnIndex) 判断是否为空
  XXX getXXX(int columnIndex) 读取某一列的数据

     3),事务
       SQLiteDatabase.beginTransaction()  //打开
       SQLiteDatabase.setTransactionSuccessful() //提交
       SQLiteDatabase.endTransaction()   //结束

    b,SQLiteOpenHelper
      通过该继承该类可以获取到数据库创建/打开/升级等信息
      须实现的方法
      onCreate(SQLiteDatabase db)     //数据库被创建时触发
      onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion)      //升级数据库

      其他重写
      onOpen(SQLiteDatabase db) 书库打开是触发

      方法
         SQLiteDatabase getReadableDatabase ()
  synchronized SQLiteDatabase getWritableDatabase ()

无论是Shared Preferences还是SQLite都是程序私有的其他程序无法直接访问.要想访问其他程序的数据须实现Content Provider.

分享到:
评论

相关推荐

    android学习笔记

    在数据存储方面,Android提供了多种选择,如Shared Preferences用于存储简单键值对,SQLite数据库用于结构化数据,以及文件系统存储。学习如何适当地选择和使用这些存储机制对于开发高效的应用至关重要。 Android的...

    Android学习笔记

    数据存储方面,Android提供了多种方式,如Shared Preferences用于存储轻量级数据,SQLite数据库适合结构化数据,或者使用File I/O操作本地文件。此外,Android的Parcelable接口和Serializable接口可用于对象序列化,...

    Android代码笔记齐全

    此外,还可能涵盖数据存储,包括Shared Preferences、SQLite数据库和文件存储的基本使用。 **day04**可能涵盖的是Activity和Intent的概念,这是Android应用中的核心元素。Activity代表用户界面的一个可视屏幕,...

    Android学习笔记之Shared Preference

    Shared Preferences是Android开发中一种轻量级的数据存储方式,它主要用于保存应用程序中的简单配置或用户首选项。在Android系统中,当需要存储少量的非结构化数据,如开关状态、字符串选择等,Shared Preferences是...

    Android学习笔记三:第一个应用程序的扩充

    1. 数据存储:Android提供了多种数据存储方式,包括Shared Preferences(键值对)、SQLite数据库、文件系统、Content Provider等,用于持久化应用数据。 2. 网络通信:通过HttpURLConnection、OkHttp、Retrofit等库...

    Android数据存储和数据库编程

    通过阅读《新版Android开发教程+笔记十二--文件存取、数据库编程.pdf》这份文档,开发者可以更详细地了解这些概念,并通过实例学习如何在Android项目中实现数据存储和数据库功能。此外,文档可能还会涵盖如何处理...

    Android个人笔记本

    Android提供了多种存储方式,如SQLite数据库、Shared Preferences(用于轻量级数据)、文件系统或者云同步。考虑到个人笔记本的特点,SQLite可能是最合适的,因为它可以方便地管理结构化的笔记数据。 4. **内容提供...

    超全android 教程 笔记

    7. **数据存储**:Android提供多种数据存储方式,如Shared Preferences(轻量级)、SQLite数据库(结构化数据)、文件存储以及ContentProvider等,开发者需要根据需求选择合适的方式。 8. **网络编程**:Android...

    android 非常全培训笔记

    4. **数据存储**:Android提供了多种数据存储方式,如Shared Preferences、SQLite数据库、内部/外部存储和文件系统。理解它们的适用场景和使用方法是提升应用功能的关键。 5. **网络编程**:Android网络编程涉及...

    安卓学习笔记

    5. **数据存储**:学习Shared Preferences、SQLite数据库、文件存储以及ContentProvider的使用,了解如何持久化应用数据。 6. **网络编程**:理解Android的网络访问限制,使用HttpURLConnection、OkHttp或Volley...

    Android开发教程笔记完全版.rar

    7. **数据存储**:Android提供了多种数据存储方式,如Shared Preferences(轻量级键值对存储)、SQLite数据库(结构化数据存储)、文件存储以及Content Provider。 8. **网络编程**:Android应用常常需要与服务器...

    Android开发教程笔记(完全版pdf)

    Android提供了多种数据存储方式,包括Shared Preferences、SQLite数据库、文件系统以及最近引入的Room库。理解这些存储机制的适用场景和使用方法,对优化应用性能至关重要。 八、网络编程 Android应用往往需要与...

    超全android 中文教程 笔记

    对于数据存储,教程会讲解Shared Preferences、SQLite数据库和文件系统的使用,以及如何通过网络API获取和存储远程数据。同时,也会介绍如何使用Room Persistence Library简化数据库操作。 网络编程是现代应用不可...

    新版Android开发教程 笔记

    4. **数据存储**:介绍SQLite数据库的使用,Shared Preferences的简单数据存储,以及ContentProvider的使用,用于跨应用数据共享。 5. **网络编程**:讲解Android中的网络请求,如使用HttpURLConnection、OkHttp库...

    Android开发教程笔记(完全版)

    5. **数据存储**:Android提供了多种数据存储方式,包括Shared Preferences、SQLite数据库、文件系统和Content Provider。了解它们的适用场景和使用方法,有助于管理和持久化应用数据。 6. **BroadcastReceiver**:...

    android学习中记录

    6. **数据存储**:Android支持多种数据存储方式,如Shared Preferences(轻量级键值对存储)、SQLite(本地关系型数据库)、文件存储以及Content Provider(用于共享数据)。 7. **网络编程**:Android应用可以使用...

    安卓基础笔记-超详细

    在安卓中,数据存储有多种方式,包括Shared Preferences、内部存储、外部存储以及SQLite数据库。这一天,我们详细讨论了这些存储方式的特点、适用场景及使用方法,理解了如何持久化应用数据。 ### Day06: 网络通信...

    一份还不错的Android开发教程笔记.zip

    7. **数据存储**:Android提供了多种数据存储方式,如Shared Preferences、SQLite数据库和内部/外部存储。了解这些方法并选择合适的存储策略是应用开发的重要环节。 8. **Intent Services与Broadcast Receivers**:...

Global site tag (gtag.js) - Google Analytics