天天看點

C#從字元串擷取檔案路徑

C# 截取帶路徑的檔案名字,擴充名,等等 的幾種方法

C#對磁盤IO操作的時候,經常會用到這些,路徑,檔案,檔案名字,檔案擴充名.

    之前,經常用切割字元串來實作,

    可是經常會弄錯. 尤其是啟始位置,多少個位元組,經常弄暈.

下面這種方法貌似比較簡便:

string filePath = @"E:Randy0528中文目錄JustTest.rar";

Response.Write("檔案路徑:"+filePath);

Response.Write("<br/>更改路徑字元串的擴充名。<br/>");

Response.Write(System.IO.Path.ChangeExtension(filePath, "txt"));

Response.Write("<br/>傳回指定路徑字元串的目錄資訊。。<br/>");

Response.Write(System.IO.Path.GetDirectoryName(filePath));

Response.Write("<br/>傳回指定的路徑字元串的擴充名。<br/>");

Response.Write(System.IO.Path.GetExtension(filePath));

Response.Write("<br/>傳回指定路徑字元串的檔案名和擴充名。<br/>");

Response.Write(System.IO.Path.GetFileName(filePath));

Response.Write("<br/>傳回不具有擴充名的指定路徑字元串的檔案名。<br/>");

Response.Write(System.IO.Path.GetFileNameWithoutExtension(filePath));

Response.Write("<br/>擷取指定路徑的根目錄資訊。<br/>");

Response.Write(System.IO.Path.GetPathRoot(filePath));

Response.Write("<br/>傳回随機檔案夾名或檔案名。<br/>");

Response.Write(System.IO.Path.GetRandomFileName());

Response.Write("<br/>建立磁盤上唯一命名的零位元組的臨時檔案并傳回該檔案的完整路徑。<br/>");

Response.Write(System.IO.Path.GetTempFileName());

Response.Write("<br/>傳回目前系統的臨時檔案夾的路徑。<br/>");

Response.Write(System.IO.Path.GetTempPath());

Response.Write("<br/>确定路徑是否包括檔案擴充名。<br/>");

Response.Write(System.IO.Path.HasExtension(filePath));

Response.Write("<br/>擷取一個值,該值訓示指定的路徑字元串是包含絕對路徑資訊還是包含相對路徑資訊。<br/>");

Response.Write(System.IO.Path.IsPathRooted(filePath));

執行結果

檔案路徑:E:Randy0528中文目錄JustTest.rar

更改路徑字元串的擴充名。

E:Randy0528中文目錄JustTest.txt

傳回指定路徑字元串的目錄資訊。。

E:Randy0528中文目錄

傳回指定的路徑字元串的擴充名。

.rar

傳回指定路徑字元串的檔案名和擴充名。

JustTest.rar

傳回不具有擴充名的指定路徑字元串的檔案名。

JustTest

擷取指定路徑的根目錄資訊。

E:

傳回随機檔案夾名或檔案名。

ct2h5b2h.sed

建立磁盤上唯一命名的零位元組的臨時檔案并傳回該檔案的完整路徑。

C:Documents and SettingsRandyLocal SettingsTemp mpAD.tmp

傳回目前系統的臨時檔案夾的路徑。

C:Documents and SettingsRandyLocal SettingsTemp

确定路徑是否包括檔案擴充名。

True

擷取一個值,該值訓示指定的路徑字元串是包含絕對路徑資訊還是包含相對路徑資訊。

True