Java解決java.io.FileNotFoundException寫文件時候提示“系統找不到指定的路徑”或“拒絕訪問”


一、問題
在使用FileInputStream時會遇到如下問題1和問題2。
問題1:

  1.  
    java.io.FileNotFoundException: .\xxx\xxx.txt (系統找不到指定的路徑。)

問題2:

  1.  
    java.io.FileNotFoundException: .\xx\xx.txt (拒絕訪問。)

二、分析
當遇到問題時,的確是當前所指定的文件不存在或者目錄不存在。
當遇到第二個問題時,是因為你訪問了一個文件目錄,而不是文件,因此會拋出問題2的異常。

三、解決辦法
第一個的解決辦法是,先判斷一下當前文件是否存在,如果存在則略過,如果不存在,在創建,具體做法如下

//在填寫文件路徑時,一定要寫上具體的文件名稱(xx.txt),否則會出現拒絕訪問。
File file = new File("./mywork/work.txt");
if(!file.exists()){
//先得到文件的上級目錄,並創建上級目錄,在創建文件
file.getParentFile().mkdir();
try {
//創建文件
file.createNewFile();
} catch (IOException e) {
e.printStackTrace();
}
}

第二個的解決辦法是,在填寫文件的路徑時一定要具體到文件,如下:

File file = new File("./mywork/work.txt");

而不能寫成:

    File file = new File("./mywork/");

因為這樣你訪問的是一個目錄,因此就拒絕訪問。

原文鏈接:https://blog.csdn.net/dahai_888/article/details/53078889?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-1.baidujs&dist_request_id=1328626.12653.16153814588631931&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-1.baidujs


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM