我有一個方法來獲取特定文件的文件夾路徑:捕撈「FileNotFoundException異常」
string filePath = Path.Combine(Environment.GetFolderPath(
Environment.SpecialFolder.MyDocuments), "file.txt");
後來,我用它來讀取文件中的文本:
StreamReader rdr = new StreamReader(filePath); // "C:\Users\<user>\Documents\file.txt"
string myString = rdr.ReadToEnd();
麻煩是,如果文件不存在,它會拋出一個FileNotFoundException
(顯然)。我希望希望使用if/else
來捕捉錯誤,用戶可以在其中直接瀏覽以找到該文件,但我不確定使用什麼來驗證filePath
是否有效。
舉例來說,我不能用:
if (filePath == null)
因爲檢索串頂端方法將總是返回一個值,它是否是有效的。我該如何解決這個問題?
'如果(!File.Exists(文件路徑))' – MarcinJuraszek 2014-12-02 06:05:12
@MarcinJuraszek:當文件之間作出存在()返回了true和文件的訪問嘗試刪除會發生什麼? – abatishchev 2014-12-02 06:35:39
爲什麼你不**也趕上例外**並允許用戶選擇一個新文件? – 2014-12-02 06:52:58