Android 文件存儲知識點總結

注0:本文整理于 6 月 13 日
注1:今天 6 月 15 日,回過頭來看看,整理了又能怎么樣,還是記不住

  • Android 文件存儲知識點總結
    SharedPreferences
    Android SDK 支持的文件存儲技術
    - 使用 SharedPreferences 保存 key-value 類型的數據
    - 流文件存儲(使用 openFileOutput 和 openFileInput 方法,或 FileInputStream 和 FileOutputStream 對象)
    - XML 半結構化存儲
    - 用 JSON 保存數組和對象
    - 用數據庫保存結構化數據
    - 用第三方的面向對象數據庫直接保存 Java 對象
    使用 SharedPreferences 存取 key-value 類型的數據
    String FILE_NAME = "fileName";
    SharedPreferences mySharedPreferences = getSharedPreferences(FILE_NAME, Activity.MODE_PRIVATE);
    // 寫入
    SharedPreferences.Editor editor = mySharedPreferences.edit();
    editor.putString("name", "bill");
    editor.putBoolean("employee", true);
    editor.putInt("id", 1);
    editor.commit();
    // 讀取使用 getXxx 方法獲得 value, 第二個參數是 value 的默認值
    String name = mySharedPreferences.getString("name", "");
    boolean employee = mySharedPreferences.getBoolean("employee", false);
    int id = mySharedPreferences.getInt("id", -1);
    SharedPreferences 保存路徑和使用文件流讀取
    保存路徑:/data/data/packagename/shared_prefs
    使用文件流讀取的代碼:
    // 獲取目錄
    String path = android.os.Environment.getDataDirectory()
    .getAbsolutePath() + "/data/" + getPackageName() + "/shared_prefs/xxx.xml";
    FileInputStream fis = new FileInputStream(path);
    InputStreamReader isr = new InputStreamReader(fis);
    BufferedReader br = new BufferedReader(isr);
    String strInfo = br.readLine();
    fis.close();
    SharedPreferences 將文件保存在 SD 卡上
    利用 Java 反射技術改變系統(tǒng)內定的文件保存路徑
    具體代碼查看Kindle 《Android 程序員面試寶典》5.1 面試例題4
    SharedPreferences 保存圖像數據
    將圖像轉化成字符串即可。
    具體代碼查看Kindle 《Android 程序員面試寶典》5.1 面試例題4
    PreferenceActivity 類實現(xiàn)一個設置界面
    因為實際運用較少,所以這里只做了解。
    PreferenceActivity 是 Activity 的子類,其預定義了一些專用組件,可以實現(xiàn)常用設置項。
    具體可查源碼
    流文件
    Android SDK 支持哪些獲取文件輸入輸出流的方式
    - 1 直接創(chuàng)建 FileInputStream 和 FileOutputStream 對象
    - 2 使用 Context.openFileInput 和 Context.openFileOutput 方法可分別獲取用于寫文件和讀文件的 OutputStream 和 InputStream 對象
    Context.openFileOutput 存放數據文件的路徑
    /data/data/data/packagename/files 目錄中
    使用 ImageView 組件裝載 SD 卡上的圖像文件
    ImageView imV = (ImageView)findViewById(R.id.Xxxxx);
    ImageView.setImageDrawable(Drawable.createFromPath("/sdcard/Xxxxx.png"));
    XML 存儲
    Android SDK 支持讀取 XML 嗎?
    只支持采用 SAX 技術讀取 XML。
    SAX 引擎分析 XML 文檔的過程
    具體代碼查看本書 5.3 節(jié)。
    主要是通過 Java 代碼進行解析,無關 SDK。
    將 XML 文件轉換成對象
    主要是要通過一個具體映射類和 XML 文件進行對應
    JSON 存儲
    描述 JSON 文檔的格式
    JSON 是一種輕量級數據存儲和傳輸方式。
    可以使用字符串形式保存數組和對象屬性值。
    數組使用中括號 “[]”, 對象使用大括號“{}”。
    解析 JSON 格式文檔
    解析的步驟是先將文檔序列化裝載,然后一步一步進行解析。
    Java 中有現(xiàn)成的類和方法可以進行使用的,所以不慌。
    主要運用的是 JSONObject 和 JSONArray。其他的有時間的話可以去看看的。
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

友情鏈接更多精彩內容