none
c# 如何測試文件路徑真實存在? RRS feed

  • 問題

  • pictureBox1.Load(D:\A.jpg);

    若然D:\A.jpg不是真實存在
    則運行時會出現錯誤

    那應該怎樣分辨圖片路徑是真實存在?

    請指教
    2009年10月17日 上午 07:02

解答

  • 請參閱MSDN文件庫[FileInfo.Exists 屬性 ]
    引述自上文的範例片段改編
    FileInfo fInfo = new FileInfo(FileName);
       
        if (!fInfo.Exists)
        {
           //你可以在這裡寫下如果那個檔案不存在要怎麼處理
        }
    else
      {
          //如果檔案存在要做啥動作
       }


    學而不思則罔, 思而不學則殆.
    如果你一直都看不懂、不想學習看懂、抗拒看懂MSDN Library的話,那你最好放棄想要寫好程式這件事
    如果你自私地不肯回饋與分享,那別人為何要花時間回答你的問題?
    • 已提議為解答 阿尼 2009年10月17日 上午 07:27
    • 已標示為解答 ricoyup 2009年10月17日 上午 09:33
    2009年10月17日 上午 07:20
    版主

所有回覆

  • 請參閱MSDN文件庫[FileInfo.Exists 屬性 ]
    引述自上文的範例片段改編
    FileInfo fInfo = new FileInfo(FileName);
       
        if (!fInfo.Exists)
        {
           //你可以在這裡寫下如果那個檔案不存在要怎麼處理
        }
    else
      {
          //如果檔案存在要做啥動作
       }


    學而不思則罔, 思而不學則殆.
    如果你一直都看不懂、不想學習看懂、抗拒看懂MSDN Library的話,那你最好放棄想要寫好程式這件事
    如果你自私地不肯回饋與分享,那別人為何要花時間回答你的問題?
    • 已提議為解答 阿尼 2009年10月17日 上午 07:27
    • 已標示為解答 ricoyup 2009年10月17日 上午 09:33
    2009年10月17日 上午 07:20
    版主
  • 另一個方法是用 File.Exists(),方法差不多,只有一個差別是 File.Exists 是靜態方法,FileInfo.Exists 必須要生成 FileInfo 物件才可以用。
    初學不是問題,但用不正確的態度來問問題,那就是很大的問題。
    如果只會用 "看" 的學程式,那不如早點改行,以免誤己一生...
    若不想快點得到解答,可以儘量把問題寫模糊一點,愈模糊愈不會得到解答。
    除非不能打中文,否則請尊重當地語系的網友,使用中文發問或回答,這是一種基本禮貌。
    • 已提議為解答 阿尼 2009年10月17日 上午 07:30
    2009年10月17日 上午 07:27
    版主
  • 小朱第一個打錯了,看得霧煞煞~ 看到行末才知道,第一個應該打成 FileInfo.Exists ...
    論壇是網友平等互助 保證解答請至 微軟技術支援服務
    提問時,錯誤情境描述與錯誤訊息很重要,情境描述包含你做了什麼,預期的結果與實際發生的結果。一個最爛的問法範例:「我的電腦電腦怎麼不能開機?」誰知道你家是不是沒電還是你根本找不到電源鈕。
    2009年10月17日 下午 04:47
  • 小朱第一個打錯了,看得霧煞煞~ 看到行末才知道,第一個應該打成 FileInfo.Exists ...
    論壇是網友平等互助 保證解答請至 微軟技術支援服務
    提問時,錯誤情境描述與錯誤訊息很重要,情境描述包含你做了什麼,預期的結果與實際發生的結果。一個最爛的問法範例:「我的電腦電腦怎麼不能開機?」誰知道你家是不是沒電還是你根本找不到電源鈕。

    是有File.Exists,像是DirectoryInfo,也有Directory一樣,同樣也可以用Exists()
    File.Exists 方法
    Directory.Exists 方法

    2009年10月19日 上午 03:02
  • 要接 Bill Chung 的前文,才會看得霧煞煞啊~
    論壇是網友平等互助 保證解答請至 微軟技術支援服務
    提問時,錯誤情境描述與錯誤訊息很重要,情境描述包含你做了什麼,預期的結果與實際發生的結果。一個最爛的問法範例:「我的電腦電腦怎麼不能開機?」誰知道你家是不是沒電還是你根本找不到電源鈕。
    2009年10月19日 上午 04:24
  • 接Bill Chung的我也不知道那裡怪^^"

    反正有答案,是對的就好了~
    2009年10月19日 上午 09:13
  • 應該這樣寫就比較通順:
    「另一個方法是用 FileInfo.Exists(),方法差不多,只有一個差別是 File.Exists 是靜態方法,FileInfo.Exists 必須要生成 FileInfo 物件才可以用。」


    論壇是網友平等互助 保證解答請至 微軟技術支援服務
    提問時,錯誤情境描述與錯誤訊息很重要,情境描述包含你做了什麼,預期的結果與實際發生的結果。一個最爛的問法範例:「我的電腦電腦怎麼不能開機?」誰知道你家是不是沒電還是你根本找不到電源鈕。
    2009年10月19日 上午 09:26
  • 這樣寫才是錯的吧 ...

    Bill 大把 FileInfo.Exists() 講掉了,我再講一次不是很奇怪?

    初學不是問題,但用不正確的態度來問問題,那就是很大的問題。
    如果只會用 "看" 的學程式,那不如早點改行,以免誤己一生...
    若不想快點得到解答,可以儘量把問題寫模糊一點,愈模糊愈不會得到解答。
    除非不能打中文,否則請尊重當地語系的網友,使用中文發問或回答,這是一種基本禮貌。
    2009年10月19日 上午 09:38
    版主
  • 是我看錯了... 看太多文章看到鬼影了...
    論壇是網友平等互助 保證解答請至 微軟技術支援服務
    提問時,錯誤情境描述與錯誤訊息很重要,情境描述包含你做了什麼,預期的結果與實際發生的結果。一個最爛的問法範例:「我的電腦電腦怎麼不能開機?」誰知道你家是不是沒電還是你根本找不到電源鈕。
    2009年10月19日 上午 09:52