Java| Java中轉義字元和路徑符
阿新 • • 發佈:2019-02-15
在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下獲得的是/