編輯:關於Android編程
大家都知道,在實際工作中開發,進場需要將一個文件寫入到手機的存儲中。既然說到手機的存儲空間,那就先說說手機的存儲空間分類:
1: 內部存儲空間
RAM內存: 也就是手機的運行的內存,相當於電腦的內存
ROM內存: 也就是手機的存儲內存,相當於電腦的硬盤
2: 外部存儲空間
也就是可插拔的SD卡,相當於電腦的移動硬盤,U盤等。
既然手機存儲分為兩類,那我們先看看如何在手機的內部存儲中讀寫文件。
那我們引入一個實際中很常見的例子:
一般帶登錄界面的,都需要將用戶的信息保存到本地。我們就用上面的例子演示,將用戶輸入的信息保存到手機的內部存儲。
布局文件代碼如下:
當我們點擊按下確定按鈕後,會將我們的用戶信息,寫到手機的內部存儲中,也就是該應用所在的包名下
public void login(View v) { String name = ed_nam.getText().toString(); String passwd = ed_passwd.getText().toString(); //判斷用戶名或者密碼是否輸入 if((name.equals()) || (passwd.equals())) { Toast.makeText(this, 用戶名或密碼不能為空, Toast.LENGTH_SHORT).show(); } else { //如果選中自動登錄,我們就需要保存用戶名和密碼 if(cb.isChecked()) { //創建一個文件,用戶保存用戶名和密碼 File file = new File(data/data/com.demo.storage/info.txt); try { FileOutputStream fos = new FileOutputStream(file); //寫入用戶名和密碼,以name##passwd的格式寫入 fos.write((name + ## + passwd).getBytes()); //關閉輸出流 fos.close(); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } } Toast.makeText(this, 登錄成功, Toast.LENGTH_SHORT).show(); } }
我們導出可以看下:
到這裡的話,我們的往手機的內部存儲中寫已經完成。接下是往手機的內部存儲中讀。
那我們就這樣做,當如果只要點擊進入此Actiivty就顯示出用於以前保存的用於和密碼
public void readInfo() { File file = new File(data/data/com.demo.storage/info.txt); //如果文件存在,則讀取 if(file.exists()) { try { FileInputStream fin = new FileInputStream(file); //把字節流轉化為字符流 BufferedReader buffer = new BufferedReader(new InputStreamReader(fin)); //讀取文件中的用戶名和密碼 String text = buffer.readLine(); //以##為關鍵字分割字符 String s[] = text.split(##); //設置進EditText ed_nam.setText(s[0]); ed_passwd.setText(s[1]); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } } }
到這裡我們的讀寫就完成了。
但是有人有沒有發現我們上面的路徑都是我們自己寫死的,同時也是自己用手一個一個寫的,萬一中間寫錯一個字母,豈不是很麻煩。
不過Google給我們提供了一個專門訪問內部存儲的API:getFilesDir()
//創建一個文件,用戶保存用戶名和密碼 //File file = new File(data/data/com.demo.storage/info.txt); //getFilesDir返回的是一個File對象,其路徑是:data/data/com.demo.storage/files File file = new File(getFilesDir(), info.txt);getFileDir的路徑是包名下files文件下:當我們點擊登錄時,就會在此路徑下創建一個info.txt文件
同理Google也提供了一個API: getCacheDir(),其路徑大家可以猜到了,就是上圖cache所在的路徑了。
我們進入到系統設置,app,正在運行中就找到此進程
就能看到如上圖所示,其中Clear Data按鈕是清除包名文件夾下所有的內容,Clear Cache是清除Cache文件夾下的內容
小米miui8應用鎖怎麼設置呢?小米miui8應用鎖怎麼使用呢?還不知道的朋友一起隨小編看看下文的miui8應用鎖設置使用教程吧!首先打開手機系統設置,點擊
效果圖源碼KqwOpenCVFeaturesDemoCanny邊緣檢測器是一種被廣泛使用的算法,並被認為是邊緣檢測最優的算法,該方法使用了比高斯差分算法更復雜的技巧,如多
Toolbar在前面的博文《Android開發筆記(二十)頂部導航欄》中,我們學習了ActionBar的用法,可是ActionBar著實是不怎麼好用,比如文字風格不能定制
1、Dom4j概述dom4j is an easy to use, open source library for working with XML, XPath and