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();
            }
            
        }
    }
}

  

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM