大多Android設備都配有SD卡,我們稱之為外部存儲空間。那么如何對SD卡進行讀寫呢?下面我們講述SD卡讀與寫的操作。
1.SD卡的寫操作
假設我們在用戶登錄時將用戶輸入的用戶名和密碼都保存在SD卡中,那么如何向SD卡設備中寫入數(shù)據呢?參考Android下數(shù)據的保存和讀取所涉及的登錄項目新建一個登錄項目(命名為:用戶登錄保存數(shù)據SD卡),當點擊登錄按鈕時將用戶名和密碼保存到SD卡這一外部存儲空間中而不再是保存到內部存儲空間,具體代碼塊如例1-1所示:
- 保存數(shù)據業(yè)務方法
上圖方法的設計思路是:getExternalStorageDirectory方法獲取SD卡所在的路徑,在該路徑下新建一個文件,將數(shù)據寫入該文件中。在主Activity中調用此方法,如例1-2所示:
- 方法調用
圖1-1所示
從上圖1-1可知數(shù)據保存失敗,查看日志信息如圖1-2所示:
圖1-2所示
在清單文件中添加相關權限,如圖1-3所示:
圖1-3所示
再次運行程序,提示保存用戶名密碼成功,此時從DDMS中的文件瀏覽視圖中可以瀏覽到該文件如圖1-4所示:
導出文件,如圖1-5所示:
圖1-5所示
2.SD卡讀操作
完成了SD卡寫的操作,我們現(xiàn)在要讀取寫入SD卡中的數(shù)據并將該數(shù)據部署到相應的控件上,具體方法如例1-3所示:
1.3數(shù)據讀取方法
上圖方法的設計思路是:讀取文件的存儲路徑并獲取該文件的輸入流,在程序中將讀取的數(shù)據流轉換成字符串并顯示在相應的控件上。主Activity中調用此方法,如例1-4所示:
1.4方法調用
此時,運行程序效果如圖1-6所示:
圖1-6所示
上述操作可以得出:向SD卡寫數(shù)據時要添加相應的權限,而讀SD卡的數(shù)據時則不需要添加權限,這便存在著安全隱患。為此,google工程師對高版本的Android系統(tǒng)設置了SD卡的讀取保護。當選擇了【系統(tǒng)設置】à【開發(fā)者選項】à【對SD卡進行讀寫保護】選項,便設置了SD卡的讀寫權限,若要讀寫SD卡則必須添加讀寫權限,否則無法讀寫SD卡。
本文版權歸傳智播客Android培訓學院所有,歡迎轉載,轉載請注明作者出處。謝謝!
作者:傳智播客Android培訓學院
首發(fā):http://fskzgqt.cn/Android