C#寫日志類實例
本文實例講述了C#寫日志類,分享給大家供大家參考。
具體實現(xiàn)方法如下:
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 日志內(nèi)容
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#程序設計有所幫助。
相關文章
C#實現(xiàn)Markdown內(nèi)容轉為Word或PDF
Markdown作為一種輕量級的標記語言,因其簡潔易讀、語法清晰的特點被廣大程序員和技術文檔編寫者所青睞,本文主要介紹了如何使用C#實現(xiàn)Markdown內(nèi)容轉為Word或PDF,需要的可以參考下2024-03-03
C# 數(shù)據(jù)庫鏈接字符串加密解密工具代碼詳解
本文通過代碼給大家介紹C# 數(shù)據(jù)庫鏈接字符串加密解密工具的相關知識,實現(xiàn)思路大概是使用兩個數(shù)對連接字符串進行加密,再用這兩個數(shù)進行解密,具體詳細代碼,大家參考下本文2018-05-05
DevExpress實現(xiàn)禁用TreeListNode CheckBox的方法
這篇文章主要介紹了DevExpress實現(xiàn)禁用TreeListNode CheckBox的方法,在項目開發(fā)中有應用價值,需要的朋友可以參考下2014-08-08

