zoukankan      html  css  js  c++  java
  • 读写文件之日志文件

    我们在写软件的时候,经常要记录一些登陆信息、删除信息之类,便于日后查询。我简单写了一个针对日志文件的类,可以通过此类可以自定义日志文件名称,当日志达到规定大小时,自动备份,路径可以自行定义具体如下:
    命名空间:

    using System;
    using System.Web;
    using System.IO;
    using System.Text;


    具体实现:
    public class LogFile
     {
      protected string LogfileName; // 文件名称
      protected string LogPath = "../upedFile"; // 文件路径
      protected int LogMaxContent = 2048; // 文件大小
      protected string InputContent;  // 具体内容

      public LogFile()
      {

      }

      public LogFile(string StrLogfileName,string StrInputContent,string StrLogPath)
      {
       LogfileName  = StrLogfileName;
       InputContent = StrInputContent; 
       LogPath = StrLogPath;

      }

      public  void LogWrite()
      {
       // string PathName = System.Web.HttpContext.Current.Server.MapPath(LogPath) + LogfileName;
       string PathName = System.Web.HttpContext.Current.Server.MapPath(LogPath) + "\\" + LogfileName;
       FileInfo Finfo = new FileInfo(PathName);

       string PathNameMove = PathName.Substring(0,PathName.LastIndexOf("\\"))+"\\" + DateTime.Now.ToString("yyyyMMddhhmm") + LogfileName;
          
       if( Finfo.Exists && Finfo.Length > LogMaxContent ) // 如果超出,重名名
       {
        Finfo.CopyTo(PathNameMove);
        Finfo.Delete();
       }

       try
       {
        using(FileStream Fs = Finfo.OpenWrite())
        {
         StreamWriter Sw = new StreamWriter(Fs);
        
         Sw.BaseStream.Seek(0, SeekOrigin.End); //设置写数据流的起始位置为文件流的末尾
        
         StringBuilder StrInput = new StringBuilder(); // 记录写入的内容
         StrInput.Append("\r\n Log Entry : ");
         StrInput.Append(DateTime.Now.ToString());
         StrInput.Append("\r\n");
         StrInput.Append(InputContent + "\r\n");
         StrInput.Append("------------------------------------\n");

         Sw.Write(StrInput);    
         Sw.Flush();    
         Sw.Close();
        }
       }
       catch
       {
        System.Web.HttpContext.Current.Response.Write("<script language=javascript>alert('日志创建失败')</script>");
       }

      }

  • 相关阅读:
    HDU 1501 Zipper(DFS)
    HDU 2181 哈密顿绕行世界问题(DFS)
    HDU 1254 推箱子(BFS)
    HDU 1045 Fire Net (DFS)
    HDU 2212 DFS
    HDU 1241Oil Deposits (DFS)
    HDU 1312 Red and Black (DFS)
    HDU 1010 Tempter of the Bone(DFS+奇偶剪枝)
    HDU 1022 Train Problem I(栈)
    HDU 1008 u Calculate e
  • 原文地址:https://www.cnblogs.com/skylaugh/p/352342.html
Copyright © 2011-2022 走看看