C#日志方法

来源:互联网 发布:网络双刃剑政治论文 编辑:程序博客网 时间:2024/06/05 02:09
using System;using System.Linq;using System.Collections.Generic;using System.Text;using System.IO;namespace XSKZQ.Log{  public class XKLog    {      //private static string FileDir = System.IO.Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().GetName().CodeBase) + "\\log\\";      private static string FileDir = System.IO.Path.GetDirectoryName(@"/SDMemory/") + "\\log\\";      private static readonly object log_Lock = new object();        /// <summary>        /// 显控日志写入        /// </summary>        /// <param name="log"></param>        public void WriteLog(string log)        {            if (!Directory.Exists(FileDir)) Directory.CreateDirectory(FileDir);            string FileName = FileDir + DateTime.Now.ToString("yyyy-MM-dd") + ".txt";            FileName = FileName.Remove(0, 1);            try            {                lock (log_Lock)                {                    using (StreamWriter sw = File.AppendText(FileName))                    {                        sw.WriteLine(DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss") + "  -->  " + log);                    }                }            }            catch (Exception ex)            {                //记录异常                string startError = "XKLog.WriteLog函数异常发生时间:" + DateTime.Now.ToString("[HHmmss]") + " " + ex.InnerException.ToString();                //因为无法预知的异常,并且在出现异常的时候显控无法在窗体上提示,所以我们要创建一个异常文件,来记录当前发生的异常;                string Errorurl = System.IO.Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().GetName().CodeBase) + "\\ModError.txt";                Errorurl = Errorurl.Replace("file:\\", "");                StreamWriter stream = new StreamWriter(Errorurl, true);                stream.WriteLine(startError);                stream.Flush();                stream.Close();            }        }     }}



原创粉丝点击