//实现系统异常与报错日志的记录
ErrorLog err = new ErrorLog();
err.errorlog(new Exception());
//实现系统异常与报错日志的记录
class ErrorLog
{
public void errorlog(Exception ex)
{
string FilePath = "D:/ErrorLog.txt";
StringBuilder msg = new StringBuilder();
msg.Append("*************************************** \n");
msg.AppendFormat(" 异常发生时间: {0} \n", DateTime.Now);
msg.AppendFormat(" 异常类型: {0} \n", ex.HResult);
msg.AppendFormat(" 导致当前异常的 Exception 实例: {0} \n", ex.InnerException);
msg.AppendFormat(" 导致异常的应用程序或对象的名称: {0} \n", ex.Source);
msg.AppendFormat(" 引发异常的方法: {0} \n", ex.TargetSite);
msg.AppendFormat(" 异常堆栈信息: {0} \n", ex.StackTrace);
msg.AppendFormat(" 异常消息: {0} \n", ex.Message);
msg.Append("***************************************");
try
{
if (File.Exists(FilePath))
{
using (StreamWriter tw = File.AppendText(FilePath))
{
tw.WriteLine(msg.ToString());
}
}
else
{
TextWriter tw = new StreamWriter(FilePath);
tw.WriteLine(msg.ToString());
tw.Flush();
tw.Close();
tw = null;
}
}
catch (Exception)
{
Console.ReadKey();
}
}
}
//自主编写的异常类
public class MyException : Exception
{
public override string Message
{
get { return "不是正整数"; }
}
}