//方法一:
/// <summary>
/// 日志
/// </summary>
/// <param name="txt">跟踪的内容</param>
/// <param name="file">文件名</param>
public void WriteLog(string txt, string file)
{
string text = string.Format("E:\\ABC\\{0}\\", string.IsNullOrWhiteSpace(file) ? "OTHERS" : file);//日志生成路径
if (!System.IO.Directory.Exists(text))
{
System.IO.Directory.CreateDirectory(text);
}
string arg = System.DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss ");
text = string.Format("{0}{1}.log", text, System.DateTime.Now.ToString("yyyy-MM-dd-HH"));
System.IO.FileStream fileStream = new System.IO.FileStream(text, System.IO.FileMode.Append);
System.IO.StreamWriter streamWriter = new System.IO.StreamWriter(fileStream, System.Text.Encoding.Default);
try
{
streamWriter.WriteLine(string.Format("{0} ↓↓↓", arg));
streamWriter.WriteLine(txt);
}
finally
{
streamWriter.Close();
fileStream.Close();
}
}
//方法二
public static void Errorwrite(Exception ex)
{
string FilePath = "E:\\ABC\\aa\\ErrorLog.txt";
StringBuilder msg = new StringBuilder();
msg.Append("*************************************** \r\n");
msg.AppendFormat(" 异常发生时间: {0} \r\n", DateTime.Now);
msg.AppendFormat(" 异常消息: {0} \r\n", ex.Message);
msg.AppendFormat(" 导致异常的应用程序或对象的名称: {0} \r\n", ex.Source);
msg.AppendFormat(" 引发异常的方法: {0} \r\n", ex.TargetSite);
msg.AppendFormat(" 异常堆栈信息: {0} \r\n", ex.StackTrace);
msg.AppendFormat(" 异常类型: {0} \r\n", ex.GetType());
msg.AppendFormat(" 导致当前异常的 Exception 实例: {0} \r\n", ex.InnerException);
msg.Append("***************************************");
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;
}
}
方法三:
参考:https://blog.csdn.net/koala_ivy/article/details/79664324