android開發中進行資料儲存與訪問

2021-06-26 09:33:12 字數 1211 閱讀 7847

怎樣在android開發中進行資料儲存與訪問

資料儲存與訪問

很多時候我們的軟體需要對處理後的資料進行儲存或再次訪問。android為資料儲存提供了多種方式,分別有如下幾種:

檔案sharedpreferences

sqlite資料庫

內容提供者(content provider)

網路android有一套自己的安全模型,當應用程式(.apk)在安裝時系統就會分配給他乙個userid,當該應用要去訪問其他資源比如檔案的時候,就需要userid匹配。預設情況下,任何應用建立的檔案,sharedpreferences,資料庫都應該是私有的(位於/data/data//files),其他程式無法訪問。除非在建立時指定了context.mode_world_readable或者context.mode_world_writeable ,只有這樣其他程式才能正確訪問。

讀取檔案內容

如果要開啟存放在/data/data//files目錄應用私有的檔案,可以使用activity提供openfileinput()方法。

fileinputstream instream = this.getcontext().openfileinput("csdn.txt");

log.i("filetest", readinstream(instream));

readinstream()的方法請看本頁下面備註。

或者直接使用檔案的絕對路徑:

file file = new file("/data/data/cn.csdn.action/files/csdn.txt");

fileinputstream instream = new fileinputstream(file);

log.i("filetest", readinstream(instream));

注意:上面檔案路徑中的「cn.csdn.action」為應用所在包,當你在編寫**時應替換為你自己應用使用的包。

對於私有檔案只能被建立該檔案的應用訪問,如果希望檔案能被其他應用讀和寫,可以在建立檔案時,指定context.mode_world_readable和context.mode_world_writeable許可權。

activity還提供了getcachedir()和getfilesdir()方法:

getcachedir()方法用於獲取/data/data//cache目錄

getfilesdir()方法用於獲取/data/data//files目錄

從Hive表中進行資料抽樣 Sampling

在hive中提供了資料取樣 sampling 的功能,用來從hive表中根據一定的規則進行資料取樣,hive中的資料取樣支援分桶表取樣和資料塊取樣。根據輸入的inputsize,取樣n 比如 輸入大小為1g,tablesample 50 percent 將會取樣512m的資料 看例子 表lxw1總大...

在Groovy中進行數字替換

在處理數字的時候,經常需要將單個的數字前加個 0 以補充成標準的兩位形式,比如將 3 轉換成為 03 這在日期中很常見,當然在日期中也有響應的格式可以解決,在此只是用groovy的replaceall來在給定的字串中去替換。很簡單,也沒有啥好說的,只是注意,在此用到了正規表示式 groovy的 ur...

使用hive進行資料開發

3 1 hive環境搭建 啟動 hive 3 2 hive helloworld 檢視所有資料庫 show databases 進入default資料庫 use default 檢視資料庫中所有表 show tables 檢視表結構 desc table name 刪除表 drop table db...