本文实例讲述了C#写日志类,分享给大家供大家参考。
具体实现方法如下:
using System; using System.Configuration; using System.IO; using System.Threading;namespace FQDService.Utils { /// <summary> /// 写日志类 /// </summary> public class FileLogger { #region 字段 public static readonly object _lock = new object(); #endregion
#region 写文件 /// <summary> /// 写文件 /// </summary> public static void WriteFile(string log, string path) { Thread thread = new Thread(new ParameterizedThreadStart(delegate(object obj) { lock (_lock) { if (!File.Exists(path)) { using (FileStream fs = new FileStream(path, FileMode.Create)) { } }
using (FileStream fs = new FileStream(path, FileMode.Append, FileAccess.Write)) { using (StreamWriter sw = new StreamWriter(fs)) { #region 日志内容 string value = string.Format(@"{0} -------------------------------------------------------- {1}
", DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"), obj.ToString()); #endregion
sw.WriteLine(value); sw.Flush(); } } } })); thread.Start(log); } #endregion
#region 写日志 /// <summary> /// 写日志 /// </summary> public static void WriteLog(string log) { string logPath = ConfigurationManager.AppSettings["LogPath"] + "\\FQDService_Log.txt"; WriteFile(log, logPath); } #endregion
#region 写错误日志 /// <summary> /// 写错误日志 /// </summary> public static void WriteErrorLog(string log) { string logPath = ConfigurationManager.AppSettings["LogPath"] + "\\FQDService_ErrorLog.txt"; WriteFile(log, logPath); } #endregion
} }
希望本文所述对大家的C#程序设计有所帮助。