C# 简单日志文本输出
第一种 直接文件IO流写日志文件
using System.IO; public static void WriteLog(string strLog) {string sFilePath="d:\\"+DateTime.Now.ToString("yyyyMM");string sFileName = "rizhi" + DateTime.Now.ToString("dd") + ".log";sFileName = sFilePath+ "\\"+sFileName; //文件的绝对路径if (!Directory.Exists(sFilePath))//验证路径是否存在 {Directory.CreateDirectory(sFilePath);//不存在则创建 }FileStream fs; StreamWriter sw;if (File.Exists(sFileName))//验证文件是否存在,有则追加,无则创建 {fs = new FileStream(sFileName, FileMode.Append, FileAccess.Write);}else{fs = new FileStream(sFileName, FileMode.Create, FileAccess.Write);}sw = new StreamWriter(fs);sw.WriteLine(DateTime.Now.ToString("yyyy-MM-dd HH-mm-ss") + " --- " + strLog);sw.Close();fs.Close(); }
第二种 使用log4net类库输出日志
1.下载log4net类库 并选择项目对应的框架版本
下载地址:http://logging.apache.org/log4net/download_log4net.cgi
2.添加log4net引用,创建LogHelper类。
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using log4net; using log4net.Core;[assembly: log4net.Config.XmlConfigurator(Watch = true)] namespace BoilerDashboard.Common {public class LogHelper{/// <summary>/// 输出日志到Log4Net/// </summary>/// <param name="t"></param>/// <param name="ex"></param>#region static void WriteLog(Type t, Exception ex)public static void WriteLog(Type t, Exception ex){log4net.ILog log = log4net.LogManager.GetLogger(t);log.Error("Error", ex);}#endregion/// <summary>/// 输出日志到Log4Net/// </summary>/// <param name="t"></param>/// <param name="msg"></param>#region static void WriteLog(Type t, string msg)public static void WriteLog(Type t, string msg){log4net.ILog log = log4net.LogManager.GetLogger(t);log.Error(msg);}#endregion} }
第三种 Microsoft Enterprise Library里面的Log功能
以VS2012里面建立的一个控制台程序为例 1. 安装Microsoft Enterprise Library里面的Logging Application模块。 在需要使用Log功能的项目上面右键,选择Manage NuGet Packeages... 2. 在Manage NuGet Packeages窗口里面找到Enterprise Library - Logging Application Block,然后安装 安装成功以后,项目引用中会增加两个新的引用。 3. 我们需要对App.config文件进行配置。在这里我们使用配置编辑工具:Microsoft.Practices.EnterpriseLibrary.ConfigConsoleV6.vsix。这个工具的下载地址:http://www.microsoft.com/en-us/download/details.aspx?id=38789 4. 配置App.config文件。右键App.config文件选择Edit configuration file v6,打开配置工具窗口。 5. 选择菜单命令Block -> Add Logging Settings 6. 在Logging Target Listeners里面点加号按钮,然后选择Add Rolling Flat File Trace Listener(生成可以进行自动分割的文本文件)。 7. 一般需要设置的参数有:Asynchronous(选true则进行异步log), File Exist Behavior(选), File Name, Formatter Name, Max Archived Files, Roll Interval, Roll Size KB。 其中Formatter Name的值从Log Message Formatters中生成的值中选取。 8. 生成 Message Format。在Log Message Formatters中点击加号按钮,选择Add Text Formatter 点击Template右侧的...按钮,打开Template Editor对话框,对Template的内容进行编辑 编辑后在App.config中生成的xml代码如下: Logging formatter 9. 在窗口左侧区域中点击Cotegories右边的加号按钮。生成一个新的Category 10. 在新生成的Category区域中修改Name属性,然后点击Listeners右边的加号按钮,选择在Logging Target Listeners区域中已经生成的Listener。 11. 对已经进行的设置保 12. 写个简单的测试程序看看生成的Log效果如何
转载于:https://www.cnblogs.com/TBW-Superhero/p/6482899.html
C# 简单日志文本输出相关推荐
- [Win32]重绘的基本概念以及简单的文本输出文本输出
1. 客户区的完整概念: 即应用程序窗口中没有被标题栏.边框.菜单栏.工具栏.状态栏和滚动条占据的中间的一片区域,用户可以在这片区域内绘制任意信息 注意!我们不能假定它有特定的尺寸或者是它的尺寸不会发 ...
- Linux 打印简单日志(一)
简单日志输出: #include<stdio.h> #include<string.h> #include<stdlib.h>void write(char* fi ...
- pycharm console日志如何输出到txt_Django实战2-自动化运维之配置管理-04:知识扩展-logging日志模块...
日志在程序开发中是非常重要的.在生产环境下,通过日志我们可以查看程序错误信息,处理程序异常.Django利用了python提供的logging模块来记录系统日志. 本节内容参考自Django官方文档, ...
- linux日志打印规则,Linux 打印简单日志(一)
简单日志输出: #include#include#include void write(char* filename,char*szStr){ FILE*fp; fp= fopen(filename, ...
- 使用log4net将日志文件输出替csv格式
使用log4net将日志文件输出为csv格式 我们在编写程序时,会在程序运行过程中记录一些日志.log4net作为一款经久耐用的日志组件,值得我们信赖.在中小型公司中,往往没有专业的日志服务器来处理应 ...
- 【问题解决】微软OneNote使用笔记,Ditto解决OneNote复制粘贴文本输出图片问题
微信关注 "DLGG创客DIY" 设为"星标",重磅干货,第一时间送达. 白嫖用onenote和onedrive有段时间了,简单粗暴好用,没得说. 先总结(BB ...
- C++ 容器的综合应用的一个简单实例——文本查询程序
[0. 需求] 最近在粗略学习<C++ Primer 4th>的容器内容,关联容器的章节末尾有个很不错的实例. 通过实现一个简单的文本查询程序,希望能够对C++的容器学习有更深的理解. 由 ...
- linux 输出gc日志,Tomcat输出保存JVM GC日志文件
当系统出现问题时,分析java虚拟机GC日志可以帮助我们定位问题,一般来说, 我们可以通过制定JVM参数使tomcat保存GC日志文件,具体实现如下: Windows下 找到tomcat的解压目录,进 ...
- matlab中数值的取整、四舍五入、文本输出
一.取整函数 Matlab取整函数有: fix, floor, ceil, round四种,具体使用方法如下: (1) fix 朝零方向取整 如 fix(-1.3)=-1 fix(1.3)=1; (2 ...
最新文章
- 7.1.1 [Enterprise Library]缓存应用程序块场景和目标
- linux 应急响应 病毒清除 系统加固
- C语言用户标准是什么,C语言系统用户标准管理系统.doc
- div垂直水平居中经常使用的方法
- 腾讯极客挑战赛邀你“码上种树”
- 4-12DataSet Transformations
- maven-dependency-plugin (goals copy-dependencies, unpack) is not support解决办法
- three.js 来源目光(十三)Math/Ray.js
- c语言中符号常量的作用 定义,c语言常量定义规则知识点总结
- STATUS of v$archive_dest的一些情况
- 【Python机器学习及实践】实战篇:泰坦尼克号罹难乘客预测
- 1080p、1080i
- Storm0.9.6安装教程
- VS2015 scanf 函数报错 error C4996: 'scanf'
- VSCode PlatformIO 开启RTTI
- 万维c语言作业,万维考试系统-C语言题库.doc
- U盘中的文件无故丢失怎么办
- 2019滴滴前端面试总结(一面)
- 西门子杯流程工业及其自动化(1)
- 2020江苏省大学生计算机设计大赛,我校学生在2020年中国大学生计算机设计大赛江苏省级赛中喜获佳绩...
热门文章
- 读取寄存器值_温湿度传感器与S7-1200 PLC通讯读取温湿度案例
- python图像处理应用的前景_传统图像处理还有前景吗?
- centos7 无法yum安装mysql_CentOS7 安装mysql(YUM源方式)
- js return 闭包为null_js 基础知识总结
- 江苏机器人竞赛南航_挑战不止 热血不息!1000余名青少年决战江苏省机器人普及大赛!...
- cups支持的打印机列表_在Mac上怎样更新打印机软件?
- php后端接收数据,后端如何接收fetch方式发送的数据?
- .net mysql limit 分页原理_浅谈MySQL分页Limit的性能问题
- kvm虚拟机设置万兆网卡_kvm已经设置桥接网卡的虚拟机无法连接宿主机?
- 服务器的系统搭建,服务器系统搭建