using System;
using System.IO;
namespace Test_Log
{
/// <summary>
/// 信息显示方法委托
/// </summary>
/// <param name="msg"></param>
public delegate void DisplayMessageDelegate(string msg);
//状态的日志记录类
class StateLog
{
/// <summary>
/// 显示信息事件
/// </summary>
public static event DisplayMessageDelegate OnDisplayMessage;
/// <summary>
/// 日志文件存放路径
/// </summary>
private static string LogPath
{
get
{
if (!Directory.Exists(Directory.GetCurrentDirectory()+"\\Log"))
{
Directory.CreateDirectory(Directory.GetCurrentDirectory() + "\\Log");
}
return Directory.GetCurrentDirectory() + "\\Log\\"+DateTime.Today.ToString("yyyy-MM-dd")+".txt";
}
}
/// <summary>
/// 向日志文件写入信息
/// </summary>
/// <param name="inputInfo">写入的信息</param>
public static void RecordInfo(string inputInfo)
{
try
{
FileInfo file = new FileInfo(LogPath);
StreamWriter stream = null;
stream = file.AppendText();
stream.WriteLine(DateTime.Now.ToString("yyyy-MM-dd hh:mm:ss" + ": " + inputInfo));
stream.Flush();
stream.Close();
}
catch
{
}
}
/// <summary>
/// 显示信息
/// </summary>
/// <param name="inputInfo">写入信息</param>
public static void ShowMessage(string inputInfo)
{
RecordInfo(inputInfo);
if (OnDisplayMessage!=null)
{
OnDisplayMessage(DateTime.Now.ToString() + ": " + inputInfo);
}
}
}//class_end
}
调用方法:
日志文件位置:在当前项目的bin-->Debug-->Log文件夹下面