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 Settings\Randy\Local Settings\Temp\tmpAD.tmp
返回當前系統的臨時文件夾的路徑。
C:\Documents and Settings\Randy\Local Settings\Temp\
確定路徑是否包括文件擴展名。
True
獲取一個值,該值指示指定的路徑字符串是包含絕對路徑信息還是包含相對路徑信息。
True