C#客户端日志记录

来源:互联网 发布:js base64 key 编辑:程序博客网 时间:2024/05/21 10:46

直接写代码:


<span style="font-size:14px;">using System;using System.Text;using System.IO;namespace SendMail_Meten_{    /// <summary>    /// 记录日志    /// </summary>    public static class Logger    {         public static void record(string message,string stackTrace)        {            string dirpath = AppDomain.CurrentDomain.BaseDirectory + ("LogRecord\\" + DateTime.Now.ToString("yyyyMMdd") + "\\");            if (!Directory.Exists(dirpath))            {                Directory.CreateDirectory(dirpath);            }             string path = AppDomain.CurrentDomain.BaseDirectory + ("LogRecord\\" + DateTime.Now.ToString("yyyyMMdd") + "\\" + DateTime.Now.ToString("yyyy-MM-dd_hh_mm_ss") + ".log");            StreamWriter sw = new StreamWriter(path,false,Encoding.UTF8);            StringBuilder str = new StringBuilder();            str.Append("------------------------------------------------------------------------ \r\n");            str.Append("当前时间:" + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss") + " 错误信息为:" + message + "   \r\n");            str.Append("StackTrace信息为:" + stackTrace + "  \r\n");            sw.Write(str.ToString());            sw.Flush();            sw.Close();        }        //记录代码执行过程        public static void RecordStep(string message)        {             string dirpath = AppDomain.CurrentDomain.BaseDirectory + ("LogStepRecord\\" + DateTime.Now.ToString("yyyyMMdd") + "\\");            if(!Directory.Exists(dirpath))            {                Directory.CreateDirectory(dirpath);            }            string path = AppDomain.CurrentDomain.BaseDirectory + ("LogStepRecord\\" + DateTime.Now.ToString("yyyyMMdd") + "\\" + DateTime.Now.ToString("yyyy-MM-dd") + ".log");            StreamWriter sw = null;             sw = File.AppendText(path);            sw.Write(DateTime.Now.ToString("HH:mm:ss") + "  " + message + " \r\n");            sw.Flush();            sw.Close();            Console.WriteLine(message);        }    }}</span>


没有什么难点,就是注意C#路径和WEB开发的路径不一样,还是StreamWriter的IO操作,记得一定要全部冲出缓冲区,并且关闭流,否则对象不会被释放,并且内容也没有被写入文件中。

0 0
原创粉丝点击