using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.IO;
namespace ErrorLogApp
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine( string.Format("{0:yyyy-MM-dd}",DateTime.Now));
DateTime dt = DateTime.Now;
ErrorLog("ErrorLogTime" + string.Format("{0:yyyy-MM-dd}", DateTime.Now) + ".txt", "【" + string.Format("{0:yyyy-MM-dd HH:mm:ss}", DateTime.Now) + "】Error:");
Console.ReadKey();
}
private static void ErrorLog(string FileName, string FileContent)
{
try
{
string strPath = System.IO.Directory.GetCurrentDirectory() + "\\log";
if (!Directory.Exists(strPath))
{
// Create the directory it does not exist.
Directory.CreateDirectory(strPath);
}
if (FileName.IndexOf("/") != -1)
{
FileName = FileName.Replace("/", "-");
}
string strLogName = strPath + "\\" + FileName;
StreamWriter TextFile = File.AppendText(strLogName);
TextFile.WriteLine(FileContent);
TextFile.Close();
}
catch (Exception e)
{
//多线程操作时,可能会提示另一个线程正在使用的异常
Console.WriteLine(e.ToString());
}
}
}
}
对错误日志的大小进行限制:
/// <summary>
/// record the error log
/// </summary>
/// <param name="FileName">file name of log</param>
/// <param name="FileContent">error information</param>
private static void ErrorLog(string FileName, string FileContent)
{
try
{
string strPath = System.IO.Directory.GetCurrentDirectory() + "\\log";
if (!Directory.Exists(strPath))
{
// Create the directory it does not exist.
Directory.CreateDirectory(strPath);
}
if (FileName.IndexOf("/") != -1)
{
FileName = FileName.Replace("/", "-");
}
string strLogName = strPath + "\\" + FileName;
FileInfo LogFile = new FileInfo(strLogName);
StreamWriter TextFile = LogFile.AppendText();
//如果日志文件大于5M
if (LogFile.Length < 5000000)
{
TextFile.WriteLine(FileContent);
}
TextFile.Close();
}
catch (Exception e)
{
Console.WriteLine(e.ToString());
}
}