日志帮助类

 1.代码

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.IO;
using System.Configuration;
using System.Reflection;

namespace LogHelper.Common
{
    public class LogHelper
    {
        private string logFile = "";
        /// <summary>
        /// 不带参数的构造函数
        /// </summary>
        public LogHelper()
        {
            try
            {
                string logPath = Path.Combine(System.Environment.CurrentDirectory,DateTime.Now.ToString("yyyyMM"));
                logFile = Path.Combine(logPath,DateTime.Now.ToString("yyyyMMdd") + ".txt");
                if (!Directory.Exists(logPath))
                    Directory.CreateDirectory(logPath);

                if (!File.Exists(logFile))
                    File.Create(logFile);
            }
            catch
            {
            }
        }
        /// <summary>
        /// 带参数的构造函数
        /// </summary>
        /// <param name="logFile"></param>
        public LogHelper(string logFile)
        {
            try
            {
                this.logFile = logFile;
                if (!File.Exists(logFile))
                {
                    File.Create(logFile);
                }
            }
            catch { }

        }
        /// <summary>
        /// 追加一条信息
        /// </summary>
        /// <param name="text"></param>
        public void Write(string text)
        {
            try
            {
                using (StreamWriter sw = new StreamWriter(logFile, true, Encoding.UTF8))
                {
                    sw.Write(DateTime.Now.ToString("[yyyy-MM-dd HH:mm:ss] ") + text);
                }
            }
            catch { }
        }
        /// <summary>
        /// 追加一条信息
        /// </summary>
        /// <param name="logFile"></param>
        /// <param name="text"></param>
        public void Write(string logFile, string text)
        {
            try
            {
                using (StreamWriter sw = new StreamWriter(logFile, true, Encoding.UTF8))
                {
                    sw.Write(DateTime.Now.ToString("[yyyy-MM-dd HH:mm:ss] ") + text);
                }
            }
            catch { }
        }
        /// <summary>
        /// 追加一行信息
        /// </summary>
        /// <param name="text"></param>
        public void WriteLine(string text)
        {
            try
            {
                text += "\r\n";
                using (StreamWriter sw = new StreamWriter(logFile, true, Encoding.UTF8))
                {
                    sw.Write(DateTime.Now.ToString("[yyyy-MM-dd HH:mm:ss] ") + text);
                }
            }
            catch { }
        }
        /// <summary>
        /// 追加一行信息
        /// </summary>
        /// <param name="logFile"></param>
        /// <param name="text"></param>
        public void WriteLine(string logFile, string text)
        {
            try
            {
                text += "\r\n";
                using (StreamWriter sw = new StreamWriter(logFile, true, Encoding.UTF8))
                {
                    sw.Write(DateTime.Now.ToString("[yyyy-MM-dd HH:mm:ss] ") + text);
                }
            }
            catch { }
        }
    }
}

2.调用

 LogHelper.Common.LogHelper logHelper = new Common.LogHelper();

logHelper.WriteLine("你好");

3.路径临时配置位置

在当前位置

string logPath = Path.Combine(System.Environment.CurrentDirectory,DateTime.Now.ToString("yyyyMM"));
                logFile = Path.Combine(logPath,DateTime.Now.ToString("yyyyMMdd") + ".txt");

4.效果

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • C# XML操作

    1.XML帮助类 using System; using System.Collections.Generic; using System.Text; usin...

    用户1055830
  • C#List的排序和简单去重总结

          List集合在开发过程中很常见,经常我们要对该集合进行一系列操作,本文介绍如何将该集合内的元素进行排序,博主制作简单WinForm应用程序进行演示。...

    用户1055830
  • 合并两个结构完全相同的DataTable

    两个结构一模一样的DataTable如何合并? 例子:使用Winform进行演示,表2的数据为固定的,表1的数据可以动态添加,通过合并按钮合并表1和表2的数据到...

    用户1055830
  • 科学瞎想系列之七十七 齿槽转矩是个神马鬼

    【图片部分来自网络如有侵权敬请邮箱联系。欢迎原文转发到朋友圈,未经许可的媒体平台谢绝转载,如需转载或合作请邮件联系。联系邮箱laolicsiem@126.co...

    标准答案
  • [virt][qemu]clocksource的管理和虚拟化

    前言: kvm-clock,tsc,hpet,acpi_pm,pit,rtc。。。这些词看着都晕了@@ 虚拟化场景下,容作者在这里一一道来。 分析: 1,L...

    皮振伟
  • MySQL 表锁和行锁机制

    行锁变表锁,是福还是坑?如果你不清楚MySQL加锁的原理,你会被它整的很惨!不知坑在何方?没事,我来给你们标记几个坑。遇到了可别乱踩。通过本章内容,带你学习My...

    lyb-geek
  • React + webpack 开发单页面应用简明中文文档教程(一)一些基础概念

    版权声明:本文为 FengCms FungLeo 原创文章,允许转载,但转载必须注明出处并附带首发链接 ...

    FungLeo
  • hosts文件是什么?有什么用?

    先将C:\Windows\System32\drivers\etc目录下的Hosts文件,

    简单并不简单
  • 使用朝鲜自主研发的操作系统是什么体验?

    来源:新浪科技德国两位研究人员揭秘了朝鲜国产操作系统红星的样子。结果显示,该操作系统有着OS X的界面,Linux的内核以及朝鲜自己的安全机制。 ? 本周日,...

    编程范 源代码公司
  • LINUX驱动

    心跳包

扫码关注云+社区

领取腾讯云代金券