using System; 
using System.IO; 
using System.Text; 
public class LogInfo 
{ 
private string ErrorInfo_User = ""; // 记录用户自定义错误信息 
private string ErrorPosition = ""; // 记录错误的位置信息,可包括类、函数等 
private string ErrorInfo_Sys = ""; // 记录系统产生的异常错误信息 
// 记录日志信息 
public void RecordErrorInfo(string Position, string Error_Sys, string Error_User) 
{ 
ErrorPosition = Position; 
ErrorInfo_Sys = Error_Sys; 
ErrorInfo_User = Error_User; 
} 
// 自定义日志信息格式 
private string GetLogContent() 
{ 
string LogContent = "\r\n--------------------------------------------------------------------------\r\n"; 
LogContent += "[自定义异常日志][" + DateTime.Now.ToString() + "]\r\n"; 
LogContent += "=>[Position]=>[" + ErrorPosition + "]\r\n"; 
LogContent += "=>[UserInfo]=>[" + ErrorInfo_User + "]\r\n"; 
LogContent += "=>[SysInfo]=>[" + ErrorInfo_Sys + "]\r\n"; 
LogContent += "--------------------------------------------------------------------------\r\n"; 
return LogContent; 
} 
// 保存日志信息到文件 
public void SaveLogToFile() 
{ 
try 
{ 
// get the file path of the log. 
string FileName = @"log/LogInfo_" + DateTime.Now.ToString("yyyy-MM-dd") + ".txt"; 
// get the content of the log. 
string LogContent = GetLogContent(); 
// create the stream of the log file and save the log. 
FileStream smLog = new FileStream(FileName, FileMode.Append, FileAccess.Write); 
// if the stream is correct. 
if (smLog != null) 
{ 
long lFileContentLen = smLog.Length; 
smLog.Lock(0, lFileContentLen); 
byte[] buffer = Encoding.GetEncoding("gb2312").GetBytes(LogContent); 
smLog.Write(buffer, 0, buffer.Length); 
smLog.Unlock(0, lFileContentLen); 
smLog.Flush(); 
smLog.Close(); 
} 
} 
catch 
{ } 
} 
} 
public class LogExample 
{ 
private LogInfo _Log = new LogInfo(); 
// 某处理函数一 
public void Function_First() 
    { 
try 
{ 
// do something which could be occur exception. 
} 
catch (Exception error) 
{ 
_Log.RecordErrorInfo("函数Function_First", error.Message.ToString(), "执行函数Function_First时,发生异常!"); 
_Log.SaveLogToFile(); 
} 
    } 
// 某处理函数二 
public void Function_Second() 
{ 
try 
{ 
// do something which could be occur exception. 
} 
catch (Exception error) 
{ 
_Log.RecordErrorInfo("函数Function_Second", error.Message.ToString(), "执行函数Function_Second时,发生异常!"); 
_Log.SaveLogToFile(); 
} 
} 
} 
class Program 
{ 
static void Main(string[] args) 
{ 
// 创建内建了日志的对象 
LogExample Le = new LogExample(); 
// 执行处理操作一 
Le.Function_First(); 
// 执行处理操作二 
Le.Function_Second(); 
} 
} 
大型站长资讯类网站! https://www.0857zz.com