博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
读写文件之日志文件
阅读量:7003 次
发布时间:2019-06-27

本文共 1681 字,大约阅读时间需要 5 分钟。

hot3.png

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

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

}

转载于:https://my.oschina.net/u/582827/blog/728110

你可能感兴趣的文章