經過這幾天的學習,對android的儲存方式又有了一定的理解。
android裡面的儲存方式大體有4種,sharedpreferences檔案儲存,記憶體儲存,sd卡儲存,網路儲存,資料庫儲存。
sharedpreferences登錄檔的註冊方式,在底層是乙個xml檔案,多用在儲存配置引數。使用也是非常的簡單,先例項化sharedpreferences ,然後通過例項獲得其編輯器,通過編輯器運算元據,最後呼叫編輯器的commit方法提交資料即可。
插入資料如下:sharedpreferences sharedpreferences = context.getsharedpreferences(filename, context.mode_private); //儲存的檔名,許可權
editor editor = sharedpreferences.edit();// 獲取編輯器
set> set = map.entryset();
for (entrye : set)
editor.commit(); // 提交修改
刪除資料:
public static void remove(context context, string filename,
mapmap)
sharedpreferences sharedpreferences = context.getsharedpreferences(
filename, context.mode_private);
editor editor = sharedpreferences.edit();// 獲取編輯器
set> set = map.entryset();
for (entrye : set)
editor.commit(); // 提交修改}
刪除資料和插入資料總的來說大同小異的。只是編輯器根據對應的鍵,刪除對應的值。
查詢資料更加簡單:public static mapfind(context context, string filename)
sharedpreferences sharedpreferences = context.getsharedpreferences(
filename, context.mode_private);
mapmap=(map) sharedpreferences.getall();
return map;
}重要的是呼叫sharedpreferences的getall()方法,返回乙個map物件,然後放回給需要呼叫的位置,再迴圈取出即可。總的來說sharedpreferences儲存方式還是比較簡單的,操作也比較簡單方便。
記憶體儲存相對於其他的儲存方式比較簡單,但是其實這樣的儲存方式其實並不是很常用,因為手機的記憶體本來就有限。而應用程式又是那麼的占用空間。
其機制是使用流,對資料的操作實現讀入,寫出。
例子**如下:
資料幫助類如下:
public class filesutils catch (exception e) finally catch (ioexception e) }}
}public static object getobjectfromfile(string filename,context context) catch (exception e) finally catch (exception e) }}
return obj;}}
sd卡的儲存稍微的複雜一點:要操作sd卡,要獲得其對應的許可權,
這些許可權都是users permission下的許可權,在確定的時候必須要核對清楚、
而且,由於不同的android手機的sd卡的路徑是不一樣的,所以要用到android提供的environment靜態類操作環境資訊。
public void onclick(view arg0)
fileoutputstream fos=null;
//3用流的方式寫入到sd卡中
try catch (exception e) finally catch (ioexception e) }}
其中要通過environment.getexternalstoragestate().equals(environment.media_mounted)表示式判斷是否裝載了記憶體卡,實現第一步的判斷。
如果是儲存到記憶體卡的話,則可以通過流的方式儲存
file f=new file(environment.getexternalstoragedirectory(), fn);
fos=new fileoutputstream(f);
bitmap.compress(compressformat.png, 100, fos);
fos.flush();
由於網路儲存和資料庫儲存涉及的知識點比較多,下篇部落格在詳細說明。
Android的幾種資料儲存方式
在android,可供選擇的儲存方式包括了sharedpreferences 檔案儲存 sqlite資料庫儲存方式 內容提供器方式 content provider 以及網路方式 5種,具體如下 1 sharedpreferences是android提供的一種配置檔案讀寫方式,預設存在應用的data...
Android資料儲存方式
1.檔案儲存,2.sd卡儲存 外部儲存 3.sp儲存 配置檔案儲存 4.資料庫儲存 儲存大量結構相似的資料,可以進行增刪改查 5.網路儲存 手機記憶體不足時存放在伺服器端的 sqlite資料庫的建立與增刪改查 1.首先建立mydbopenhelper繼承sqliteopenhelper重寫它的構造方...
幾種session儲存方式比較
原文 集群中session安全和同步是個最大的問題,下面是我收集到的幾種session同步的方案,希望能通過分析其各自的優劣找出其適應的場景。1.客戶端cookie加密 這是我以前採用的方式,簡單,高效。比較好的方法是自己採用cookie機制來實現乙個session,在應用中使用此session實現...