溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Java?File分隔符和Path分隔符如何使用

發(fā)布時(shí)間:2022-07-02 10:17:07 來源:億速云 閱讀:175 作者:iii 欄目:開發(fā)技術(shù)

這篇“Java File分隔符和Path分隔符如何使用”文章的知識(shí)點(diǎn)大部分人都不太理解,所以小編給大家總結(jié)了以下內(nèi)容,內(nèi)容詳細(xì),步驟清晰,具有一定的借鑒價(jià)值,希望大家閱讀完這篇文章能有所收獲,下面我們一起來看看這篇“Java File分隔符和Path分隔符如何使用”文章吧。

一、文件分隔符

文件分隔符是用來分隔構(gòu)成特定位置路徑的目錄名的字符。

1.獲取文件分隔符

在Java中,有幾種方法可以獲得文件分隔符。

我們可以用File.separator來獲取String的分隔符。

String fileSeparator = File.separator;

我們也可以用File.separatorChar獲得這個(gè)分隔符的字符。

char fileSeparatorChar = File.separatorChar;

從Java 7開始,我們也可以使用文件系統(tǒng)。

String fileSeparator = FileSystems.getDefault().getSeparator();

輸出結(jié)果將取決于主機(jī)操作系統(tǒng)。文件分隔符在Windows上為\,在macOS和基于Unix的操作系統(tǒng)上為/。

2.構(gòu)造一個(gè)文件路徑

Java提供了一些方法來從目錄列表中構(gòu)建文件路徑。

這里,我們使用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());

正如我們所看到的,我們可以只提供路徑字符串來構(gòu)建一個(gè)文件路徑---我們不需要明確地包括一個(gè)文件分隔符。

3.路徑分隔符

路徑分隔符是操作系統(tǒng)常用的一個(gè)字符,用于分隔路徑列表中的各個(gè)路徑。

3.1.獲取路徑分隔符

我們可以用File.pathSeparator來獲取路徑分隔符的String。

String pathSeparator = File.pathSeparator;

我們也可以以char的形式獲得路徑分隔符。

char pathSeparatorChar = File.pathSeparatorChar;

這兩個(gè)例子都返回了路徑分隔符。在Windows上是分號;,在Mac和基于Unix的操作系統(tǒng)上是冒號:。

3.2.構(gòu)造一個(gè)文件路徑

我們可以用分隔符作為分隔符來構(gòu)建一個(gè)String的文件路徑。

讓我們試試String.join方法:

String[] pathNames = { "path2", "path3", "path4" };
String path = String.join(File.pathSeparator, pathNames);

這里我們在Windows上測試我們的代碼。

assertEquals("path2;path3;path4", path);

而文件路徑在Linux或Mac上看起來會(huì)有所不同。

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上的表現(xiàn)會(huì)有所不同。

assertEquals("path2:path3", buildPathUsingStringJoiner("path2", "path3"));

以上就是關(guān)于“Java File分隔符和Path分隔符如何使用”這篇文章的內(nèi)容,相信大家都有了一定的了解,希望小編分享的內(nèi)容對大家有幫助,若想了解更多相關(guān)的知識(shí)內(nèi)容,請關(guān)注億速云行業(yè)資訊頻道。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI