The Will Will Web

記載著 Will 在網路世界的學習心得與技術分享

如何利用 .NET 檢查某「路徑字串」是檔案或目錄

這好像不是什麼有意義的題目,雖然我知道有 File.ExistsDirectory.Exists 可用,只是我昨天心血來潮想找找 .NET Framework 中是否有檢查某「路徑字串」是「檔案」或「目錄」的方法(Method),一開始先猜想 Path 類別是否有相關的 Method,但找不到。

如果你今天得到一個「路徑字串」,光從字串中是無法判定這是檔案或目錄的,「檔案」通常都有副檔名,但也可以沒有;而「目錄」通常都沒有副檔名,但也可以有。所以無論如何都需要有個判斷方法。

既然找不到簡單的方法,就必須用傳統的方法判斷,如下範例:

if (File.Exists(strPath))
{
    // 有效的檔案
}
else if (Directory.Exists(strPath))
{
    // 有效的目錄
}
else
{
    // 無效的路徑(檔案或目錄不存在)或沒有讀取權限。
}

我們在判斷路徑字串時,���多時候得到的路徑字串都是檔案居多,所以應該先判斷「是否為檔案」,然後再判斷「是否為目錄」,當兩者條件都不成立時,就代表該路徑不存在,或該路徑沒有讀取權限。

至於對檔案或目錄的操作,可以多參考以下類別的 MSDN 文件說明: