日志帮助类

Posted 坚持不懈,才能出彩

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了日志帮助类相关的知识,希望对你有一定的参考价值。

 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.效果

 




以上是关于日志帮助类的主要内容,如果未能解决你的问题,请参考以下文章

日志帮助类

常用python日期日志获取内容循环的代码片段

在内部片段类中使用ListView

片段 null 必须是公共静态类才能从实例状态正确重新创建

Snackbar 在片段类中不起作用

我的Android进阶之旅NDK开发之在C++代码中使用Android Log打印日志,打印出C++的函数耗时以及代码片段耗时详情