在Java中,可以通過以下幾種方法獲取程序的根目錄:
String rootDir = System.getProperty("user.dir");
System.out.println("程序根目錄: " + rootDir);
這里獲取的是當前工作目錄,也就是程序啟動時的目錄。注意這不是程序根目錄,而是程序運行時的目錄。
URL resource = getClass().getClassLoader().getResource("");
if (resource != null) {
String rootDir = resource.getPath();
System.out.println("程序根目錄: " + rootDir);
} else {
System.out.println("未找到程序根目錄");
}
這里獲取的是類路徑下的資源,通常情況下,程序根目錄下的資源文件會被放在classpath下。這種方法可以找到程序根目錄。
File file = new File(".");
System.out.println("程序根目錄: " + file.getAbsolutePath());
這里創建了一個表示當前目錄的File對象,然后使用getAbsolutePath()方法獲取其絕對路徑。這種方法也可以找到程序根目錄,但需要注意的是,如果程序是在IDE中運行,那么輸出的路徑可能是IDE的工作目錄,而不是程序的實際根目錄。