2019-11-18 java中File類getPath()、getAbsolutePath()的區(qū)別

File file = new File(".\\src\\test.txt");
1、getPath():

返回定義時的路徑,(就是你寫什么路徑,他就返回什么路徑)

2、getAbsolutePath():

返回絕對路徑,但不會處理“.”“..”的情況

3、getCanonicalPath():

返回的是規(guī)范化的絕對路徑,相當于將getAbsolutePath()中的“.”“..”解析成對應的正確的路徑

例一(使用:“.\”一個點路徑)

        //文件本地路徑:C:\Users\84695\Desktop\其他\test.docx

        File file = new File(".\\84695\\Desktop\\其他\\test.docx");
        System.out.println(file.getPath());
        System.out.println(file.getAbsolutePath());
        System.out.println(file.getCanonicalPath());

//輸出結果:
.\84695\Desktop\其他\test.docx
E:\HX-projects\hh\.\84695\Desktop\其他\test.docx  
E:\HX-projects\hh\84695\Desktop\其他\test.docx              (項目路徑:E:\HX-projects\hh)

例二(使用:“..\”兩個點路徑)

        //文件本地路徑:C:\Users\84695\Desktop\其他\test.docx
        File file = new File("..\\84695\\Desktop\\其他\\test.docx");

//輸出結果:
..\84695\Desktop\其他\test.docx
E:\HX-projects\hh\..\84695\Desktop\其他\test.docx
E:\HX-projects\84695\Desktop\其他\test.docx   (注意這個結果的路徑,與一個點時不一樣;因為他解析了“.”和“..”的情況。)

例三(使用文件絕對路徑)

        //文件本地路徑:C:\Users\84695\Desktop\其他\test.docx
        File file = new File("C:\\Users\\84695\\Desktop\\其他\\test.docx");

//輸出結果:
C:\Users\84695\Desktop\其他\test.docx
C:\Users\84695\Desktop\其他\test.docx
C:\Users\84695\Desktop\其他\test.docx

"./""../"的區(qū)別

/ :表示當前路徑的根路徑

./ :表示當前路徑

../ :表示父級路徑,當前路徑所在的上一級路徑
java中File類getPath()、getAbsolutePath()、getCanonicalPath()區(qū)別?
?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容