中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

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

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

使用File.createNewFile報錯No such file的解決方法

發布時間:2020-10-20 17:13:16 來源:億速云 閱讀:1953 作者:小新 欄目:編程語言

這篇文章主要介紹了使用File.createNewFile報錯No such file的解決方法,具有一定借鑒價值,需要的朋友可以參考下。希望大家閱讀完這篇文章后大有收獲。下面讓小編帶著大家一起了解一下。

這種問題可能是各家手機廠商定制造成的,我用的測試機都沒有出現這種創建異常的情況,新出來的Vivo、OPPO有這種情況,以下是修改后的代碼塊:

File.createNewFile()方法需要在創建文件目錄之后才能成功,否則會報No such file的錯誤,最終造成文件空指針

String storageDir = null;

if (Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)) {

    storageDir = Environment.getExternalStoragePublicDirectory(

            Environment.DIRECTORY_PICTURES).getAbsolutePath()+"/axin/image/";

}else{

    storageDir = App.getContext().getExternalFilesDir(Environment.DIRECTORY_PICTURES).getAbsolutePath()+"/image/";

}

//使用createTempFile方式必須先創建目錄,否則會出現No such file ..

File dir=new File(storageDir);

if(!dir.exists()){

    dir.mkdirs();

}

File image = null;

LogUtils.d("create before-->"+(dir.getAbsolutePath()));

try {

    image = File.createTempFile(

            getDeafultFileName(),  /* prefix */

            ".jpg",         /* suffix */

            dir      /* directory */

    );

} catch (IOException e) {

    e.printStackTrace();

}

LogUtils.d("create after-->"+(image==null?"null":image.getAbsolutePath()));                                               

感謝你能夠認真閱讀完這篇文章,希望小編分享使用File.createNewFile報錯No such file的解決方法內容對大家有幫助,同時也希望大家多多支持億速云,關注億速云行業資訊頻道,遇到問題就找億速云,詳細的解決方法等著你來學習!

向AI問一下細節

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

AI

赤峰市| 文安县| 太原市| 庆元县| 呼伦贝尔市| 康平县| 德钦县| 抚远县| 平遥县| 濮阳市| 若尔盖县| 突泉县| 黑河市| 永城市| 蓬莱市| 雅江县| 泸西县| 大英县| 武山县| 杂多县| 韩城市| 北海市| 郁南县| 宜兴市| 青田县| 屏东市| 察隅县| 浦县| 石林| 西林县| 城步| 紫金县| 馆陶县| 凤冈县| 晋城| 巴青县| 青冈县| 保靖县| 天峻县| 星座| 绥中县|