這好像不是什麼有意義的題目,雖然我知道有 File.Exists 與 Directory.Exists 可用,只是我昨天心血來潮想找找 .NET Framework 中是否有檢查某「路徑字串」是「檔案」或「目錄」的方法(Method),一開始先猜想 Path 類別是否有相關的 Method,但找不到。
如果你今天得到一個「路徑字串」,光從字串中是無法判定這是檔案或目錄的,「檔案」通常都有副檔名,但也可以沒有;而「目錄」通常都沒有副檔名,但也可以有。所以無論如何都需要有個判斷方法。
既然找不到簡單的方法,就必須用傳統的方法判斷,如下範例:
if (File.Exists(strPath))
{
// 有效的檔案
}
else if (Directory.Exists(strPath))
{
// 有效的目錄
}
else
{
// 無效的路徑(檔案或目錄不存在)或沒有讀取權限。
}
我們在判斷路徑字串時,大多時候得到的路徑字串都是檔案居多,所以應該先判斷「是否為檔案」,然後再判斷「是否為目錄」,當兩者條件都不成立時,就代表該路徑不存在,或該路徑沒有讀取權限。
至於對檔案或目錄的操作,可以多參考以下類別的 MSDN 文件說明: