文件存儲的不同路徑記錄

/**
         * 創建文件
         */
        File file = new File("/storage/emulated/0/Android/data/com.imooc.filedemo1/lebangtest");
        if (!file.exists()) {
            try {
                file.createNewFile();
                Log.e("fileinfo1", "fileinfo1" + file.toString());
            } catch (IOException e) {
                e.printStackTrace();
            }
        } else {
            Toast.makeText(MainActivity.this, "文件已經存在", Toast.LENGTH_SHORT).show();
            Log.e("fileinfo2", "fileinfo2" + file.toString());
            file.delete();
        }

  • 以下是創建文件夾的方法
  • 1.getFileDir()
  • 2.getCacheDir()
  • 3.getDir(“xxx”,MODE_PRIVATE)
  • 4.getExternalFilesDir(“xxxx”)
  • 5.getExternalCacheDir()

/**
* 這個目錄是當前應用程序默認的數據存儲目錄
*/
// File file = this.getFilesDir();
// Log.e(“fileinfo”, file.toString());

/**
* 這個目錄是當前應用程序默認的緩存文件的存放位置,把一些不是非常重要的文件在此處創建 使用 如果手機的內存不足的時候
* 系統會自動去刪除APP的cache目錄的數據
*/
// File file = this.getCacheDir();
// Log.e(“fileinfo”, file.toString());

/**
* /data/data/<包名>/app_lebang
*/
// File file = this.getDir(“lebang”, MODE_PRIVATE);
// Log.e(“info”, “fileinfo = ” + file.toString());


    /**
     * 注意:
     * 
     * 如果說開發者不遵守這樣的規則 不把數據放入
     *  /data/data/<包名>
     *  /mnt/sdcard/Android/data/<包名>
     *  卸載之後數據將不會自動清除掉 將會造成所謂的數據垃圾
     * 
     * PS:在模擬器中,/mnt/sdcard/Android/data/包名-----> storage/emulated/0/Android/data/包名
     */

    /**
     * 可以得到外部的存儲位置 該位置的數據跟內置的使用是一樣的,如果APP卸載了 這裏面的數據也會自動清除掉
     */
    // File file = this.getExternalFilesDir("DIRECTORY_TEST");
    // Log.e("info", "fileinfo = " + file.toString());

    /**
     * 可以得到外部的緩存位置 該位置的數據跟內置的使用是一樣的,如果APP卸載了 這裏面的數據也會自動清除掉
     */
    // File file = this.getExternalCacheDir();
// Log.e("info", "fileinfo = " + file.toString());

“`

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章