簡體   English   中英

File.Copy方法

[英]File.Copy method

以下代碼不引發任何異常並且不復制文件是否可行?

void Copy2(string from, string to)
{
    lock (_thisLock)
    {
     if (File.Exists(from))
     {
      File.Copy(from, to, true);
      return;
     }
     Logger.Write("File does not exists");
    }
}

客戶說應用程序不會崩潰,也不會復制任何文件,也不會寫入日志。 Logger的類型為Microsoft.Practices.EnterpriseLibrary.Logging.Logger

當然,如果文件不存在- (!File.Exists) -那么將不會到達File.Copy調用。

Logger.Write不算作例外。

如果按照您的更新建議,日志中沒有任何內容,則將再次檢查Logger.Write函數。 實施正確嗎? 在該方法中是否有引發和處理的異常? 這比File.Copy失敗而不拋出異常的可能性更大。

如果該文件不存在且未配置任何記錄程序附加程序,則可能會發生您描述的情況-即無錯誤,無日志記錄

查看MSDN中的File.Copy,您會發現它引發了很多異常。 讓您知道捕獲堆棧上方異常的所有內容都可以正確處理該異常/錯誤,而不僅僅是吞噬它

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM