欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

自己写的一个轻量级的LogHelper|不需要log4net.dll|不需要设置config

程序员文章站 2024-03-14 21:47:47
...

代码如下:

using System;
using System.ComponentModel;
using System.IO;

namespace MyLog
{
    /// <summary>
    /// 日志类型 枚举
    /// </summary>
    public enum LogType
    {
        [Description("运行日志")]
        info,
        [Description("调试日志")]
        debug,
        [Description("警告日志")]
        warning,
        [Description("报错日志")]
        error,
    }
    /// <summary>
    /// 创建日志文件夹
    /// 创建日志文件
    /// 写入日志内容
    /// </summary>
    public class MyLogHelper
    {
        /// <summary>
        /// 写日志
        /// </summary>
        /// <param name="LogType">日志类型</param>
        /// <param name="log">日志</param>
        /// <param name="ex">报错信息</param>
        public static void WriteLog(LogType logType, string log, string ex = "")
        {   
            string path = "log/" + logType;//文件夹路径:log/info   或者  log/error   这样的...
            if (!Directory.Exists(path))//判断文件夹是否存在
            {
                Directory.CreateDirectory(path);//不存在,创建文件夹
            }
            string file = path + "/" + logType + "_" + DateTime.Today.ToString("yyyyMMdd") + ".log";//文件路径+文件名+扩展名
            using (StreamWriter sw = new StreamWriter(file, true))//创建文件或者打开已有文件
            {
                sw.WriteLine("------------------------------" + DateTime.Now + "------------------------------");
                if (!string.IsNullOrWhiteSpace(log)) sw.WriteLine(log);//写入日志
                if (!string.IsNullOrWhiteSpace(ex)) sw.WriteLine(ex);//写入报错信息(如果需要的话)
                sw.WriteLine("");//空一行
                sw.Close();
            }
        }
    }
}

调用如下:

            MyLogHelper.WriteLog(LogType.info, "运行中");
            MyLogHelper.WriteLog(LogType.debug, "调试中", "一切正常!");
            try
            {
                MyLogHelper.WriteLog(LogType.warning, "警告", "将执行除0错误!");
                int zero = 0;
                int i = 1 / zero;//除零错误
            }
            catch (Exception ex)
            {
                MyLogHelper.WriteLog(LogType.error, "报错", ex.Message);
            }

 效果如下:

自己写的一个轻量级的LogHelper|不需要log4net.dll|不需要设置config

自己写的一个轻量级的LogHelper|不需要log4net.dll|不需要设置config

 本文配套源码:https://download.csdn.net/download/djk8888/12321594