c#日志文件

高空燕子飞过 高空燕子飞过     2022-08-04     259

关键词:

写日志文件是一个很常用的功能,以前都是别人写好的,直接调用的,近期写了一个小工具,因为比较小,所以懒得引用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#日志文件的使用

以前写代码时写日志文件,是用新建.txt文件去保存日志文件,写起来很麻烦,C#本来提供了一种log文档的使用方式:1首先添加Nlog的引用 须要NLog.dll库支持2实例化一个log的类privateNLog.Loggerlog=NLog.LogManager.GetCurrentClassLogger();3使... 查看详情

c#记录日志到文本文件

在配置文件中添加日志文件的存放路径:1<appSettings>2<addkey="LogPath"value="H:Logs"/>3</appSettings>封装一个记录日志的类:1publicclassSystemLog2{3publicstaticvoidWriteLogLine(stringexceptionMessage)4{5stringpath 查看详情

C# Nlog - 如何旋转日志文件,以便创建旋转的日志文件和存档

】C#Nlog-如何旋转日志文件,以便创建旋转的日志文件和存档【英文标题】:C#Nlog-Howtorotatelogfilessoitcreatesrotatedlogsfileandarchives【发布时间】:2021-07-1418:27:23【问题描述】:我无法创建以下日志轮换设置:1-当前日志文件(service.log)10... 查看详情

c#写入日志信息到文件中

为了在服务器上运行程序及时的跟踪出错的地方,可以在必要的地方加入写日志的程序。stringfolder=string.Format(@"D:\{0}\{1}",DateTime.Now.ToString("yyyy"),DateTime.Now.ToString("MM"));//判断文件夹是否存在if(!Directory.Exists(folder)){Directory.CreateDi 查看详情

c#记录日志,文件操作

...Tasks;namespaceConsoleApp_ContentCheck.Models///<summary>///写本地日志。日志文件自动删除历史的,保留最近32个日志文件。///</summary>publicclassLogHelpter///<summary>///最多记录32个日志文件,其他的删除历史文件///</summary>... 查看详情

使用 c# 和正则表达式解析日志文件

】使用c#和正则表达式解析日志文件【英文标题】:Parsinglogfilewithc#andregex【发布时间】:2016-02-1909:54:29【问题描述】:我有一个大的日志文件,看起来像下面的3行示例。\\LogFiles\\W3SVC1\\u_ex12.log:32:2015-01-0407:11:22&actor=%7B%22name%22%... 查看详情

c#操作日志

首先引用NLog的dll文件usingSystem.IO;usingNLog;----------------------------------------------------------------------------------------------------------------------------------------------------------------- 查看详情

c#文件操作

...面的所有内容Detele、读取文本文件、获取文件列表、读取日志文件、写入日志文件、创建HTML文件、CreateDirectory方法的使用.修改文件或文件夹名称等方法使用C#追加文件    StreamWri 查看详情

是否有任何 C# 框架或代码来解析 *blg 性能计数器日志文件?

】是否有任何C#框架或代码来解析*blg性能计数器日志文件?【英文标题】:IsthereanyC#frameworkorcodetoparse*blgPerfomanceCounterlogfiles?【发布时间】:2010-12-0909:08:24【问题描述】:任务不是在我的.NET应用程序中收集性能计数器数据,而是... 查看详情

c#系统日志类

///<summary>///<para>///描述:日志相关的处理///</para>///</summary>publicclassLog:IDisposable///<summary>///日志对象的缓存队列///</summary>privatestaticQueue<Msg>msgs;///<summary>///日志文件保存的路径///</summary>... 查看详情

c#实现把异常写入日志示例(异常日志)

将异常写到日志文件中,可以在调试程序的时候知道程序发生过哪些异常,并且可以知道异常发生的位置。这点对需要进行长时间运行并调试的程序尤为有效。1///<summary>2///将异常打印到LOG文件3///</summary>4///<paramname="e... 查看详情

c#记录错误日志

程序的错误日志如何记录下来?可以在遇到异常时,Catch异常,然后把异常的信息输出到txt文件中即可///<summary>///错误日志///</summary>publicclassLogHelper{privatestaticobjectlockFlag=newobject();privatestaticstringLOG_FILE_PATH=AppDomain.Cu 查看详情

从 C# 中的 JSON 对象中提取数组(新

...】:我在C#中使用NewtonsoftJSON。我有一个正在尝试解析的日志文件,以便我可以使用日志文件中的数据填充数据库。在日志文件中,每一行都是一个单独的JSON对象。日志文件如下所示:"timestamp":"2020-02-02T04:49:53Z 查看详情

C# 创建日志系统

】C#创建日志系统【英文标题】:C#Creatingalogsystem【发布时间】:2010-12-0609:38:58【问题描述】:我正在阅读以下文章:http://odetocode.com/articles/294.aspx这篇文章向我提出了很多关于日志的问题。(我不知道我是否应该在单独的问题中... 查看详情

c#记录错误日志

C#  记录错误日志(简介,方法代码)简介:程序在出错时记录错误日志,可以有利于维护,也可以记录一些程序内部运行的操作等等,它的作用很大,也很重要方法1:1///<summary>2///将异常打印到LOG文件3///</summary>... 查看详情

c#日志类

 日志在我们日常程序中是非常容易触及到的东西,当然我们在程序中可以用很多种方式来记录。在C#中我们可以用log4net.dll,也可以利用IO将记录写入文件。 作用:记录用户的操作记录程序中的异常,我们可以捕获到很多... 查看详情

c#读写文件时文件正由另一进程使用,因此该进程无法访问该文件

...一进程使用,因此该进程无法访问该文件。log.txt是一个日志文件,不定时都可能由另外的程序对它进行日志记录写入操作。今需要对日志文件读取出来,显示在日志查询里,需要用到了IO流。1、FileStreamfs=File.OpenRead(url);StreamReade 查看详情

c#打开系统日志文件时显示文件路径有问题

...;));参考技术Alog4net(LogForNet)是Apache开源的应用于.Net框架的日志记录工具,详细信息参见Apache网站.它是针对Java的log4j(LogForJava的)姊妹工具.用过log4j的都知道,它功能强大,可配置性灵活,线程安全,对日志的输出管理和级别管理方便。首... 查看详情