獲取classpath 路徑:spa
String path=Thread.currentThread().getContextClassLoader().getResource("").getPath();get
//獲取的路徑會多一個/,( /E:rep )
path = path.substring(1);input
getResourceAsStream ()返回的是inputstreamstring
getResource()返回:URLclass
Class.getResource("") 返回的是當前Class這個類所在包開始的爲置test
Class.getResource("/") 返回的是classpath的位置stream
getClassLoader().getResource("") 返回的是classpath的位置file
getClassLoader().getResource("/") 錯誤的!!di
System.out.println(Thread.currentThread().getContextClassLoader().getResource("")); System.out.println(FileTest.class.getClassLoader().getResource("")); System.out.println(ClassLoader.getSystemResource("")); System.out.println(FileTest.class.getResource("")); System.out.println(FileTest.class.getResource("/")); // Class文件所在路徑 System.out.println(new File("/").getAbsolutePath()); System.out.println(System.getProperty("user.dir"));
輸出結果:文件
file:/E:/workspace/JavaStudy/bin/ file:/E:/workspace/JavaStudy/bin/ file:/E:/workspace/JavaStudy/bin/ file:/E:/workspace/JavaStudy/bin/test/ file:/E:/workspace/JavaStudy/bin/ E:\ E:\workspace\JavaStudy