您好,登錄后才能下訂單哦!
本文實例為大家分享了Android用文件存儲數據的具體代碼,供大家參考,具體內容如下
存儲數據示例:
private void saveFileData() { BufferedWriter writer = null; try { FileOutputStream out = openFileOutput("data", MODE_PRIVATE);//保存的文件名為“data” writer = new BufferedWriter(new OutputStreamWriter(out)); writer.write("this is a message");//文件中保存此字符串 } catch (IOException e) { e.printStackTrace(); } finally { if (writer != null) { try { writer.close(); } catch (IOException e) { e.printStackTrace(); } } } }
從文件讀取數據:
private void getFileData() { BufferedReader reader = null; try { FileInputStream fileInputStream = openFileInput("data"); reader = new BufferedReader(new InputStreamReader(fileInputStream)); String line = ""; StringBuilder result = new StringBuilder(); while ((line = reader.readLine()) != null) { result.append(line); } Log.d("Test", "result data is " + result); } catch (IOException e) { e.printStackTrace(); } finally { if (null != reader) { try { reader.close(); } catch (IOException e) { e.printStackTrace(); } } } }
注意:
1. openFileOutput()方法有兩個參數:
第一個是文件名,可以不包含路徑,因為文件會默認存儲到data/data/包名/files目錄下。
第二個是操作模式,一般為MODE_PRIVATE,表示重復調用的話會覆蓋此文件的內容。而MODE_APPEND表示在文件中追加內容,不存在此文件就創建文件。
2.openFileInput()僅有一個參數,即為要讀取數據的文件名。
3.文件存儲的方式不適合保存復雜的文本數據,僅適合保存簡單的文本或者二進制數據。
4.必須添加try/catch捕獲異常,否則會報錯不能編譯。
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持億速云。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。