簡體   English   中英

如何獲得根目錄

[英]How to get the root directory

我有一個文件路徑

D:\Accurev\PPF6-AvailableToUse_Test_4_4\eBizSol_App\Source\xyz.txt

如果我做

Path.GetDirectoryName(fileName)

我懂了

D:\Accurev\PPF6-AvailableToUse_Test_4_4\eBizSol_App\Source

但我只想獲取根目錄,即"D:\\\\"

我怎么才能得到它?

NB〜是否可以不分割字符串?

使用框架提供的Path.GetPathRoot方法

獲取指定路徑的根目錄信息

對於您的情況,您可以使用:

string rootPath = Path.GetPathRoot(filename);
String pathname= @"D:\Accurev\PPF6-AvailableToUse_Test_4_4\eBizSol_App\Source\xyz.txt";    
string root = Path.GetPathRoot(pathname); 

您很幸運,有幾種方法可以完成相同的操作。 這是其中兩個:

  1. Path.GetRootPath作為其他答案已經顯示

  2. FileInfo類的DirectoryInfo.Root屬性:

     var fileName= @"D:\\Accurev\\PPF6-AvailableToUse_Test_4_4\\eBizSol_App\\Source\\xyz.txt"; var file=new FileInfo(fileName); var root=file.Directory.Root; 

您可以為此使用Path.GetPathRoot方法。

  • 此方法獲取指定路徑的根目錄信息。
  • 它返回路徑的根目錄,例如“ C:\\”;如果path為null,則返回null;如果path不包含根目錄信息,則返回空字符串。

因此,您可以簡單地使用string root = Path.GetPathRoot(fullFileName);

但是 ,此方法不能驗證路徑或文件名是否存在。

在MSDN上,此方法返回的字符串的可能模式如下:

  • 空字符串(路徑指定了當前驅動器或卷上的相對路徑)。
  • "/" (路徑指定了當前驅動器上的絕對路徑)。
  • "X:" (路徑指定驅動器上的相對路徑,其中X表示驅動器或卷號)。
  • "X:/" (路徑指定了給定驅動器上的絕對路徑)。
  • "\\\\ComputerName\\SharedFolder" (UNC路徑)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM