.net 6 C#中System.IO.Path類的用法

鸑鷟虽孤發表於2024-04-18

1. 說明

/*
Performs operations on System.String instances that contain file 
or directory path information. 
These operations are performed in a cross-platform manner.

對系統執行操作。包含檔案或目錄的字串例項路徑資訊。
這些操作是以跨平臺的方式執行的。
*/

2. 屬性

2.1 AltDirectorySeparatorChar

/*
Provides a platform-specific alternate character 
used to separate directory levels
in a path string that reflects a hierarchical file system organization.

提供用於分隔目錄級別的特定於平臺的備用字元
在反映分層檔案系統組織的路徑字串中。
*/
Console.WriteLine(Path.AltDirectorySeparatorChar); 
// 輸出結果:/

2.2 DirectorySeparatorChar

/*
Provides a platform-specific character 
used to separate directory levels in a
path string that reflects a hierarchical file system organization.

提供一個特定於平臺的字元,
用於在中分隔目錄級別反映分層檔案系統組織的路徑字串。
*/
Console.WriteLine(Path.DirectorySeparatorChar); 
// 輸出結果:\

2.3 VolumeSeparatorChar

/*
Provides a platform-specific volume separator character.

提供特定於平臺的卷分隔符字元。
*/
Console.WriteLine(Path.VolumeSeparatorChar); 
// 輸出結果::

3. 方法

3.1 GetFileName

var file= "D:\\data\\files\\測試檔案.pdf";
 Console.WriteLine(Path.GetFileName(file));
// 輸出結果:測試檔案.pdf

3.2 GetFileNameWithoutExtension

var file= "D:\\data\\files\\測試檔案.pdf";
 Console.WriteLine(Path.GetFileNameWithoutExtension(file));
// 輸出結果:測試檔案

3.3 GetDirectoryName

var file= "D:\\data\\files\\測試檔案.pdf";
 Console.WriteLine(Path.GetDirectoryName(file));
// 輸出結果:D:\\data\\files

3.4 GetExtension

var file= "D:\\data\\files\\測試檔案.pdf";
 Console.WriteLine(Path.GetExtension(file));
// 輸出結果:.pdf

3.5 GetFullPath

var file= "D:\\data\\files\\測試檔案.pdf";
 Console.WriteLine(Path.GetFullPath(file));
// 輸出結果:D:\\data\\files\\測試檔案.pdf

3.6 GetRelativePath

 var basePath = @"C:\Users\Example\Documents";
 var targetPath = @"C:\Users\Example\Documents\Projects\ExampleProject";

 Console.WriteLine(Path.GetRelativePath(basePath, targetPath));

// 輸出結果:Projects\ExampleProject

3.7 GetTempFileName


// 在磁碟上建立一個唯一命名的零位元組大小的臨時檔案,
並返回完整的該檔案的路徑。

Console.WriteLine(Path.GetTempFileName());

// 輸出結果:C:\Users\xxx\AppData\Local\Temp\tmpD10E.tmp

3.8 GetTempFileName


// 返回當前使用者的臨時資料夾的路徑。

Console.WriteLine(Path.GetTempFileName());

// 輸出結果:C:\Users\xxx\AppData\Local\Temp\

3.9 GetTempFileName


// 從指定字串中包含的路徑獲取根目錄資訊。

var file= "D:\\data\\files\\測試檔案.pdf";
Console.WriteLine(Path.GetTempFileName());

// 輸出結果:D:\

3.10 GetRandomFileName


// 返回隨機的資料夾名或檔名。。

Console.WriteLine(Path.GetRandomFileName());

// 輸出結果:a54n1pir.yw3

3.11 ChangeExtension


// 修改副檔名。
var file= "D:\\data\\files\\測試檔案.pdf";

Console.WriteLine(Path.ChangeExtension(file, ".docx"));

// 輸出結果:D:\data\files\測試檔案.docx

相關文章