代码:
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 }}View Code
新闻热点
疑难解答