java.io.FileNotFoundException: D:\e (拒絕訪問。)


這是因為訪問的文件地址是文件夾而不是,具體的文件,把路徑改為具體的文件就可以了。

 參考文章:https://blog.csdn.net/w405722907/article/details/78610485

 

/**
 * 查看某個文件夾下所有的文件  並刪除文件
 */
@RestController
public class One {

    /**
     *查看某個文件夾下所有的文件
     * @param args
     */
    public static void main(String[] args) {
        /*File file1 = new File("D:\\e\\test.txt");
        delete(file1);
        File file = new File("D:" + File.separator);
        print(file);*/
        //"D:\\門頭溝國高新2018年度(管委).xlsx"
        try {
            download("門頭溝國高新2018年度(管委).xlsx");
        } catch (IOException e) {
            e.printStackTrace();
        }
       /* String s = "D:/e/D:/門頭溝國高新2018年度(管委).xlsx (文件名、目錄名或卷標語法不正確。)";
        String substring = s.substring(8, s.length());
        System.out.println(substring);*/
    }

    /**
     * 打印某個文件夾下的所有文件名字
     * @param file
     */
    public static void print(File file){
        if (file != null){
            if (file.isDirectory()){
                File[] files = file.listFiles();
                if (files != null){
                    for (int i = 0; i < files.length; i++){
                        System.out.println(files[i]);
                    }
                }
            }
        }
    }

    /**
     * 刪除某個文件
     * @param file
     */
    public static void delete(File file){
        if (file != null && file.exists()){
            boolean delete = file.delete();
            System.out.println(delete);
        }
    }

    /**
     * 下載某個文件
     * @param fileName
     * @throws IOException
     */
    public static void download(String fileName) throws IOException {
        FileOutputStream fileOutputStream = null;
        FileInputStream fileInputStream = null;
        try {
             fileInputStream = new FileInputStream("D:\\" + fileName);
            fileOutputStream = new FileOutputStream("D:\\e\\" + fileName);
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        }
        BufferedInputStream bufferedInputStream = new BufferedInputStream(fileInputStream);
        BufferedOutputStream bufferedOutputStream = new BufferedOutputStream(fileOutputStream);
        byte[] bytes = new byte[1024];
        while (bufferedInputStream.read(bytes) != -1){
            bufferedOutputStream.write(bytes);
        }
        bufferedOutputStream.flush();
        bufferedOutputStream.close();
        bufferedInputStream.close();
    }
}

 


免責聲明!

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



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