您好,登錄后才能下訂單哦!
這篇“Java File分隔符和Path分隔符如何使用”文章的知識點大部分人都不太理解,所以小編給大家總結了以下內容,內容詳細,步驟清晰,具有一定的借鑒價值,希望大家閱讀完這篇文章能有所收獲,下面我們一起來看看這篇“Java File分隔符和Path分隔符如何使用”文章吧。
文件分隔符是用來分隔構成特定位置路徑的目錄名的字符。
在Java中,有幾種方法可以獲得文件分隔符。
我們可以用File.separator來獲取String的分隔符。
String fileSeparator = File.separator;
我們也可以用File.separatorChar獲得這個分隔符的字符。
char fileSeparatorChar = File.separatorChar;
從Java 7開始,我們也可以使用文件系統。
String fileSeparator = FileSystems.getDefault().getSeparator();
輸出結果將取決于主機操作系統。文件分隔符在Windows上為\,在macOS和基于Unix的操作系統上為/。
Java提供了一些方法來從目錄列表中構建文件路徑。
這里,我們使用Paths類。
Path path = Paths.get("dir1", "dir2");
讓我們在Microsoft Windows上測試一下。
assertEquals("dir1\\dir2", path.toString());
同樣,我們也可以在Linux或Mac上測試它。
assertEquals("dir1/dir2", path.toString());
我們也可以使用文件類。
File file = new File("file1", "file2");
讓我們在Microsoft Windows上測試一下。
assertEquals("dir1\\dir2", path.toString());
同樣,我們也可以在Linux或Mac上測試它。
assertEquals("dir1/dir2", path.toString());
正如我們所看到的,我們可以只提供路徑字符串來構建一個文件路徑---我們不需要明確地包括一個文件分隔符。
路徑分隔符是操作系統常用的一個字符,用于分隔路徑列表中的各個路徑。
3.1.獲取路徑分隔符
我們可以用File.pathSeparator來獲取路徑分隔符的String。
String pathSeparator = File.pathSeparator;
我們也可以以char的形式獲得路徑分隔符。
char pathSeparatorChar = File.pathSeparatorChar;
這兩個例子都返回了路徑分隔符。在Windows上是分號;,在Mac和基于Unix的操作系統上是冒號:。
3.2.構造一個文件路徑
我們可以用分隔符作為分隔符來構建一個String的文件路徑。
讓我們試試String.join方法:
String[] pathNames = { "path2", "path3", "path4" }; String path = String.join(File.pathSeparator, pathNames);
這里我們在Windows上測試我們的代碼。
assertEquals("path2;path3;path4", path);
而文件路徑在Linux或Mac上看起來會有所不同。
assertEquals("path2:path3:path4", path);
類似地,我們可以使用StringJoiner類:
public static StringJoiner buildPathUsingStringJoiner(String path2, String path3) { StringJoiner joiner = new StringJoiner(File.pathSeparator); joiner.add(path2); joiner.add(path3); return joiner; }
讓我們在Microsoft Windows上測試我們的代碼。
assertEquals("path2;path3", buildPathUsingStringJoiner("path2", "path3"));
而且它在Mac或Unix上的表現會有所不同。
assertEquals("path2:path3", buildPathUsingStringJoiner("path2", "path3"));
以上就是關于“Java File分隔符和Path分隔符如何使用”這篇文章的內容,相信大家都有了一定的了解,希望小編分享的內容對大家有幫助,若想了解更多相關的知識內容,請關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。