Android-數據存儲和訪問

Android爲數據存儲提供了三種方式:文件、數據庫和網絡。

 

1.SharedPreferences共享偏好 

2.Internal Storage內部存儲空間 

3.External Storage外部存儲空間 

4.SQLite Database數據庫 

5.Internet網絡

    

一、SharedPreferences(偏好設定)多用於保存軟件配置參數,是一種採用XML格式進行數據保存的方式,文件存放在DDMS中的File Explorer中的/data/data/<package name>/shares_prefs下。

    通過SharedPreferences可以將NVPName/Value Pair,鍵值對)保存在Android的文件系統中,而且SharedPreferences完全屏蔽對文件系統的操作過程,開發人員僅是通過調用SharedPreferencesNVP進行保存和讀取。

    SharedPreferences不僅能夠保存數據,還能夠實現不同應用程序間的數據共享。

    SharedPreferences支持三種訪問模式:私有(MODE_PRIVATE)、全局讀(MODE_WORLD_READABLE)、全局寫(MODE_WORLD_WRITEABLE)。

    獲取SharedPreferences對象的兩個方法:

Context.getSharedPreferences(String name,int mode):其中 name 爲本組件的配置文件名;mode 爲操作模式,默認的模式爲0

Activity.getPreferences(int mode):配置文件僅可以被調用的Activity使用。mode 爲操作模式,默認的模式爲0

如果要讀取配置文件信息,只需要直接使用SharedPreferences對象的getXXX()方法即可,而如果要寫入配置信息,則必須先調用SharedPreferences對象的edit()方法,使其處於可編輯狀態,然後再調用putXXX()方法寫入配置信息,最後調用 commit()方法提交更改後的配置文件。

二、文件存儲

    (1) 內部存儲

    Android系統允許應用程序創建僅能夠自身訪問的私有文件,文件保存在設備的內部存儲器上,在系統下的/data/data/<package name>/files目錄中。

    Android系統支持標準JavaIO類和方法,並提供了能夠簡化讀寫流式文件過程的函數,主要的兩個函數:

openFileOutput():爲寫入數據做準備而打開的應用程序私文件,如果指定的文件不存在,則創建一個新的文件,函數的返回值是FileOutputStream類型;

openFileInput():爲讀取數據做準備而打開應用程序私文件。

(2) 外部存儲(SD卡(Secure Digital Memory Card))

    SD卡適用於保存大尺寸的文件或者是一些無需設置訪問權限的文件,可以保存錄制的大容量的視頻文件和音頻文件等;SD卡使用的是FATFile Allocation Table)的文件系統,不支持訪問模式和權限控制,但可以通過文件系統的文件訪問權限的控制保證文件的私密性。

Android模擬器支持SD卡,但模擬器中沒有缺省的SD卡,開發人員須在模擬器中添加SD卡的映像文件。

(3) 資源文件

    程序開發人員可以將程序開發階段已經準備好的原始格式文件和XML文件分別存放在/res/raw/res/xml目錄下,供應用程序在運行時進行訪問;原始格式文件可以是任何格式的文件,在應用程序編譯和打包時,/res/raw目錄下的所有文件都會保留原有格式不變,而/res/xml目錄下的XML文件,一般用來保存格式化的數據,在應用程序編譯和打包時會將XML文件轉換爲高效的二進制格式,應用程序運行時會以特殊的方式進行訪問。

<!--EndFragment-->
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章