場景:需要發乙個產品,為了提高產品的可用性及使用者在操作過程中不會有過多的地方出現程式崩潰問題,我們可以把在程式中抓到異常寫到本地的檔案裡面,便於我們查詢問題。
使用方法:其實只是用了一些很常見的東西的組合,
1.在你認為可能會有異常地方加上異常捕捉的**:
trycatch(exception ex)
2. 為你的程式新增 檔案的跟蹤和除錯的接收者:textwritertracelistener
整體**如下(program.cs中):
//這個是main函式中的**:
initlog();
trace.writeline(
"" + string.format("
"unhandledexceptioneventhandler(currentdomain_unhandledexception);
form = new
form1();
trace.flush();
initlog方法及異常捕捉事件的委託:
privatestatic
void
initlog()
}catch
}textwritertracelistener listener = new
textwritertracelistener(path);
listener.traceoutputoptions |=traceoptions.datetime;
trace.listeners.add(listener);
}
這裡我是把捕獲到的異常寫到了本地的日誌中,而且以訊息框的形式顯示了出來:
//這裡form就是當前的主窗體 定義:private static form1 form;
private
delegate
void showexhandler(object
exobj);
static
void currentdomain_unhandledexception(object
sender, unhandledexceptioneventargs e)
}static
sender, system.threading.threadexceptioneventargs e)
}static
void showexception(object
exobject)
));}
}
瘋狂輸出 異常處理 異常的分類
異常處理 throwable 異常處理的父類 throwable中的方法 public class demo0 error 系統奔潰 資料庫奔潰 跟咱們 沒關係 exception 異常 是跟 有關係的 rutimeexception 執行時異常 出現異常 系統如何解決 main函式的解決方式 1....
程式的異常處理
二 什麼時候處理異常 僅當以下一種或多種情況時,我們的 才需要抓住異常 1.記錄異常 logging 將異常記錄到日誌中,便於support人員查詢錯誤原因。2.為這個異常新增相關資訊 wrap exception 加發生異常的環境資訊記錄,並產生新異常,交給呼叫本方法的 負責處理。3.執行清理工作...
python之異常處理及程式除錯
異常描述 nameerror 嘗試訪問乙個沒有宣告的變數引發的錯誤 indexerror 索引超出序列範圍引發的錯誤 indentationerror 縮排錯誤 valueerror 傳入的值錯誤 keyerror 請求乙個不存在的字典關鍵字引發的錯誤 ioerror 輸入輸出錯誤 如要讀取的檔案不...