• C# 给程序加日志功能。


    给自己的程序,加上记录日志的功能。

    以下是C#代码,可以直接复制使用的。

    using System;
    using System.Collections.Generic;
    using System.Text;
    using System.IO;
    
    namespace PingMock
    {
        class LogClass
        {
             /**//// <summary>
             /// 写入日志文件
             /// </summary>
             /// <param name="input"></param>
             public void WriteLogFile(string input)
            {
                /**/
                ///指定日志文件的目录
                string fname = Directory.GetCurrentDirectory() + "\\LogFile.txt";
                /**/
                ///定义文件信息对象
    
                FileInfo finfo = new FileInfo(fname);
    
                if (!finfo.Exists)
                {
                    FileStream fs;
                    fs = File.Create(fname);
                    fs.Close();
                    finfo = new FileInfo(fname);
                }
    
                /**/
                ///判断文件是否存在以及是否大于2K
                if (finfo.Length > 1024 * 1024 * 10)
                {
                    /**/
                    ///文件超过10MB则重命名
                    File.Move(Directory.GetCurrentDirectory() + "\\LogFile.txt", Directory.GetCurrentDirectory() + DateTime.Now.TimeOfDay + "\\LogFile.txt");
                    /**/
                    ///删除该文件
                    //finfo.Delete();
                }
                //finfo.AppendText();
                /**/
                ///创建只写文件流
    
                using (FileStream fs = finfo.OpenWrite())
                {
                    /**/
                    ///根据上面创建的文件流创建写数据流
                    StreamWriter w = new StreamWriter(fs);
    
                    /**/
                    ///设置写数据流的起始位置为文件流的末尾
                    w.BaseStream.Seek(0, SeekOrigin.End);
    
                    /**/
                    ///写入“Log Entry : ”
                    w.Write("\n\rLog Entry : ");
    
                    /**/
                    ///写入当前系统时间并换行
                    w.Write("{0} {1} \n\r", DateTime.Now.ToLongTimeString(),
                        DateTime.Now.ToLongDateString());
    
                    /**/
                    ///写入日志内容并换行
                    w.Write(input + "\n\r");
    
                    /**/
                    ///写入------------------------------------“并换行
                    w.Write("------------------------------------\n\r");
    
                    /**/
                    ///清空缓冲区内容,并把缓冲区内容写入基础流
                    w.Flush();
    
                    /**/
                    ///关闭写数据流
                    w.Close();
                }
                
            }
        }
    }
    

      

  • 相关阅读:
    [ThreadStatic] dosen't work with instance fields
    Java XxlJob 必知必会<续篇>
    Python 数据可视化神器—Pyecharts
    PICT 生成正交测试用例教程
    Hive 分桶表核心知识点
    Python + Flask 实现接口接收内存信息
    数据工程师:必备的 Hive 安装&交互方式技能
    JvmSandboxRepeater 配置修改详解
    JavaDubbo 接口测试
    Hadoop + Hive 数据仓库原理与架构
  • 原文地址:https://www.cnblogs.com/StupidsCat/p/2619499.html
Copyright © 2020-2023  润新知