C#编程输出日志的实现代码

2014-07-22 22:21:50|?次阅读|上传:wustguangh【已有?条评论】发表评论

关键词:C#|来源:唯设编程网

日志文件使得我们可以监控程序的运行状态,本文介绍使用C#实现日志文件输出的类Log,该类会在Log目录下面根据4位的年份和两位的月份创建一个子文件夹,然后在该文件夹中输出文件名为yyyyMMdd.txt的日志文件。

using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.IO;

/// <summary>
/// 记录日志
/// </summary>
public class Log
{
    public Log()
    {

    }

    /// <summary>
    /// 日志信息
    /// </summary>
    /// <param name="message"></param>
    public static void WriteLog(string message)
    {
        try
        {
            string path = AppDomain.CurrentDomain.BaseDirectory + @"Log";
            path += DateTime.Today.ToString("yyyyMM") + @"";

            if (!Directory.Exists(path))
            {
                Directory.CreateDirectory(path);
            }

            string strFileName = DateTime.Today.ToString("yyyyMMdd") + ".txt";
            using (StreamWriter output = new StreamWriter(path.Trim() + strFileName.Trim(), true, System.Text.Encoding.UTF8))
            {
                output.WriteLine("============================================");
                output.WriteLine("Time: " + System.DateTime.Now.ToString());
                output.WriteLine(message.Trim());
                output.WriteLine("============================================");
                output.Flush();
                output.Close();
            }
        }
        catch (Exception e)
        {
            System.Diagnostics.Trace.WriteLine(e.Message);
        }
    }
}

说明:

AppDomain:表示应用程序域,它是一个应用程序在其中执行的独立环境;

DateTime:可以获取系统时间;

使用StreamWriter是字符串流,使用该类的WriteLine函数可以实现文件行输出,该类的构造函数指定了文件路径和编码方式,使用完成后需要调用StreamWriter类的Close方法关闭资源。

发表评论0条 】
网友评论(共?条评论)..
C#编程输出日志的实现代码