C#日志文件
Posted 高空燕子飞过
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C#日志文件相关的知识,希望对你有一定的参考价值。
写日志文件是一个很常用的功能,以前都是别人写好的,直接调用的,近期写了一个小工具,因为比较小,所以懒得引用dll文件了,直接上网找了一个,很方便,现在记录下
public class LogClass { /**/ /// <summary> /// 写入日志文件 /// </summary> /// <param name="input"></param> public static void WriteLogFile(string input) { string dateTimeNow = DateTime.Now.ToString("yyyyMMdd"); /**/ ///指定日志文件的目录 /// //string fname = Directory.GetCurrentDirectory() + "\\\\LogFile" + dateTimeNow + ".txt";//用于获得应用程序当前工作目录 string fname = Application.StartupPath + "\\\\LogFile" + dateTimeNow + ".txt";//获取程序启动路径 //StartupPath /**/ ///定义文件信息对象 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" + dateTimeNow + ".txt", Directory.GetCurrentDirectory() + DateTime.Now.TimeOfDay + "\\\\LogFile.txt"); File.Move(Application.StartupPath + "\\\\LogFile" + dateTimeNow + ".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(); } } }
根据我自己的需要修改了一下日志文件生成路径
Application.StartupPath + "\\\\LogFile" + dateTimeNow + ".txt";//获取程序启动路径
Directory.GetCurrentDirectory() + "\\\\LogFile" + dateTimeNow + ".txt";//用于获得应用程序当前工作目录
需要写日志的时候,调用下WriteLogFile()方法就可以了,这个可以调用的,很方便
转载:http://www.cnblogs.com/StupidsCat/archive/2012/08/02/2619499.html
以上是关于C#日志文件的主要内容,如果未能解决你的问题,请参考以下文章
如何为 XSLT 代码片段配置 CruiseControl 的 C# 版本?
我的Android进阶之旅NDK开发之在C++代码中使用Android Log打印日志,打印出C++的函数耗时以及代码片段耗时详情