1. 程式人生 > >Java| Java中轉義字元和路徑符

Java| Java中轉義字元和路徑符

在java的實際開發中,經常會遇填寫一個檔案的相對路徑或者是絕對路徑的問題,對於初學者來說,經常犯難的是到底是用\ 還是用/的問題,本文將徹底解決這個問題的困擾.

先來看要下路徑符號在windows系統和再linux系統寫的顯示使用的區別:
Windows下的路徑:
這裡寫圖片描述
Linux下的路徑:
這裡寫圖片描述

對比可以發現:windows使用的是\ linux使用的是/
然而在java的程式碼開發中\是代表轉義字元的,/才是代表路徑符號,也就是說java程式碼中的路徑符號與linux下的顯示路徑符號是一致的.相反在windows下的顯示是恰好與java程式碼中的路徑符號是相反的.

當然在java程式碼中開發時是可以使用轉義字元來處理路徑符號的:
String path = "D:\ProgramFiles";


String path = "D:\\ProgramFiles"; 正確,用了轉義符號
同樣是也還是你可以直接使用路徑符號來表達的:
String path = "D:/ProgramFiles"; 正確,路徑符號不需要轉義

另外需要注意的是Java的轉義字元\的轉義並不是什麼都需要轉義,什麼都可以轉義,它只支援一下轉義:
\b \t \n \f \r \" \' \\

下面是同一段程式碼在windows環境和linux環境執行對比:
原始碼:

public class Test {

    public static void main(String[] args) {

        // System.out.println("D:\ProgramFiles");//報錯,轉義符號要接轉義的字元
System.out.println("D:/ProgramFiles"); System.out.println("D:\\ProgramFiles");// 轉義後 System.out.println("D://ProgramFiles"); } }

結果對比:
這裡寫圖片描述
這裡寫圖片描述
對比發現編譯後顯示是沒有區別的,主要區別還是在作業系統對路徑符號的使用區別.

建議:

  • 考慮的專案的執行環境可能是Linux,也肯能是windows這裡建議使用java.io.File.separator 來處理路徑符號.在Linux下獲取得到的是/,而在window下獲得的是/
    .