91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Android 文件存儲及常見問題解決

發布時間:2020-09-29 03:33:41 來源:腳本之家 閱讀:137 作者:lqh 欄目:移動開發

Android文件存儲

看下網上隨處可以搜到的文件存儲套路

if(Environment.MEDIA_MOUNTED.equals(Environment.getExternalStorageState())){
        cacheDir=mContext.getExternalCacheDir().getPath();
      }else {
        cacheDir=mContext.getCacheDir().getPath();
      }
 fileOutputStream=new FileOutputStream(cacheDir+"/"+url);

這段代碼肯定沒有錯誤,但欺騙了多少年少的開發者。

當你這樣存儲文件的時候就會報,該文件不存在,你開始想這個路徑是我獲取的,又不是我寫的,怎么會不存在,但獲取僅僅是邏輯上的存在,而不代表真實存在,所以我們必須要在這個文件不存在的時候,去創建它的文件夾,并創建這個文件 ,所以標準寫法應該是

private void initFile() {
    if(Environment.MEDIA_MOUNTED.equals(Environment.getExternalStorageState())){
      cacheDir=mContext.getExternalCacheDir().getPath();
      Log.d(TAG,"have SD");
    }else {
      cacheDir=mContext.getCacheDir().getPath();
      Log.d(TAG," not have SD");
    }
    Log.d(TAG,cacheDir);
    File file=new File(cacheDir);
    if(!file.exists()) {
      Log.d(TAG, "file no exists");
      file.mkdirs();
    }
  }

這樣的話,如果那個文件夾不存在的話,就去創建它,并且是遞歸創建,這個問題就完美解決了。

感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

界首市| 滁州市| 綦江县| 许昌市| 峡江县| 秦安县| 万荣县| 东辽县| 锡林浩特市| 陕西省| 浮梁县| 威信县| 阿巴嘎旗| 鄂州市| 新疆| 华安县| 雷波县| 崇礼县| 漠河县| 响水县| 长乐市| 闻喜县| 高阳县| 柞水县| 府谷县| 京山县| 东光县| 安岳县| 宁海县| 铜山县| 奈曼旗| 青神县| 大名县| 平南县| 靖远县| 元谋县| 唐海县| 昭苏县| 高碑店市| 新建县| 西畴县|