0x00 概述
在Java IO流章節進行練習的時候,運行代碼時候發現報錯,說文件路徑不正確。
0x01 解決
報錯代碼
package FileDemo2; import java.io.File; import java.io.IOException; public class FileDemo2 { public static void main(String[] args) throws IOException { // 需求1:在C:\Users\119k\IdeaProjects\d17\FileDemo2\目錄下創建一個文件java.txt File f1 = new File("C:\\Users\\119k\\IdeaProjects\\d17\\FileDemo2\\java.txt"); System.out.println(f1.createNewFile()); System.out.println("--------------"); // 需求2:在C:\Users\119k\IdeaProjects\d17\FileDemo2\目錄下創建一個目錄 File f2 = new File("C:\\Users\\119k\\IdeaProjects\\d17\\FileDemo2\\JavaSE\\"); System.out.println(f2.mkdir()); System.out.println("--------------"); // 需求3:在C:\Users\119k\IdeaProjects\d17\FileDemo2\目錄下創建多級目錄\JavaSE\JavaEE\ File f3 = new File("C:\\Users\\119k\\IdeaProjects\\d17\\FileDemo2\\JavaSE\\JavaEE\\"); System.out.println(f3.mkdirs()); System.out.println("--------------"); // 需求4:在C:\Users\119k\IdeaProjects\d17\FileDemo2\目錄下創建一個文件javaSE.txt File f4 = new File("C:\\Users\\119k\\IdeaProjects\\d17\\FileDemo2\\javaSE.txt"); System.out.println(f4.createNewFile()); System.out.println("--------------"); } }
修正后的代碼,注意紅色部分,增加了\src
package FileDemo2; import java.io.File; import java.io.IOException; public class FileDemo2 { public static void main(String[] args) throws IOException { // 需求1:在C:\Users\119k\IdeaProjects\d17\FileDemo2\目錄下創建一個文件java.txt File f1 = new File("C:\\Users\\119k\\IdeaProjects\\d17\\src\\FileDemo2\\java.txt"); System.out.println(f1.createNewFile()); System.out.println("--------------"); // 需求2:在C:\Users\119k\IdeaProjects\d17\FileDemo2\目錄下創建一個目錄 File f2 = new File("C:\\Users\\119k\\IdeaProjects\\d17\\src\\FileDemo2\\JavaSE\\"); System.out.println(f2.mkdir()); System.out.println("--------------"); // 需求3:在C:\Users\119k\IdeaProjects\d17\FileDemo2\目錄下創建多級目錄\JavaSE\JavaEE\ File f3 = new File("C:\\Users\\119k\\IdeaProjects\\d17\\src\\FileDemo2\\JavaSE\\JavaEE\\"); System.out.println(f3.mkdirs()); System.out.println("--------------"); // 需求4:在C:\Users\119k\IdeaProjects\d17\FileDemo2\目錄下創建一個文件javaSE.txt File f4 = new File("C:\\Users\\119k\\IdeaProjects\\d17\\src\\FileDemo2\\javaSE.txt"); System.out.println(f4.createNewFile()); System.out.println("--------------"); } }
需要在IDE內獲取文件的絕對路徑,此處使用copy-absoulte path 發現文件路徑內是多出了 \\src