Java如何獲取文件路徑?

一、通過File類獲取文件路徑

Java中可以使用File類來操作文件,通過該類的方法可以獲取文件的路徑。File類的對象可以表示一個目錄或文件的路徑名,可以使用它的getPath()方法獲取它所表示的目錄或文件的路徑。

public static void main(String[] args){
     File file = new File("test.txt");
     String filePath = file.getPath();
     System.out.println(filePath);
}

上述代碼中,首先創建了一個File類的對象file,該對象參數為文件名test.txt,接着通過調用getPath()方法獲取文件路徑,並把該路徑打印出來。

二、通過Class類獲取文件路徑

在Java中,可以通過調用當前類的ClassLoader對象的getResource()方法,來獲取文件的URL。該方法返回當前路徑資源的URL,可以進而獲取該資源的路徑。

public static void main(String[] args){
     String filePath = FileDemo.class.getClassLoader().getResource("test.txt").getPath();
     System.out.println(filePath);
}

上述代碼中,首先通過.class文件獲取該類的ClassLoader對象,再通過調用getResource()方法獲取文件路徑,最後把該路徑打印出來。需要注意的是,這裡的test.txt需與當前類在同一路徑下,否則會獲取失敗。

三、通過ClassLoader類獲取文件路徑

相對於上述方法,可以直接通過ClassLoader來獲取文件路徑,ClassLoader類中的getResource()方法與Class類中的getResource()方法類似,用於獲取當前路徑資源的URL,可以進而獲取該資源的路徑。

public static void main(String[] args){
     String filePath = ClassLoader.getSystemResource("test.txt").getPath();
     System.out.println(filePath);
}

上述代碼中,通過調用ClassLoader類的getSystemResource()方法獲取文件路徑,最後把該路徑打印出來。

四、通過System.getProperty()方法獲取文件路徑

System類中的getProperty()方法可獲取Java程序的一些系統參數,其中包括Java運行時的環境屬性以及Java虛擬機上運行的操作系統的參數。我們可以通過獲取java.class.path參數來獲取class文件的路徑,再加上文件名即可得到文件路徑。

public static void main(String[] args){
     String classPath = System.getProperty("java.class.path");
     String filePath = classPath+"/test.txt";
     System.out.println(filePath);
}

上述代碼中,首先獲取Java運行時的類路徑,然後再通過添加文件名獲取文件路徑。輸出結果為包含test.txt文件的class文件所在的路徑。

五、通過getResourceAsStream()方法獲取文件路徑

getResourceAsStream()方法用於讀取資源文件,不論該資源文件位置在哪裡,都可以通過該方法獲取到該文件的輸入流。

public static void main(String[] args){
     InputStream in = FileDemo.class.getResourceAsStream("/test.txt");
     System.out.println(in);
}

通過調用getResourceAsStream()方法獲取指定路徑(可以直接使用文件名,也可以使用相對路徑)下的文件輸入流,並打印該文件輸入流。

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/293199.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-12-25 18:39
下一篇 2024-12-25 18:40

相關推薦

發表回復

登錄後才能評論