因为工作需要,看了些C#的代码,不过有个问题,不知道是什么原因,需要调试日志,在网上搜了下,参考这位仁兄的源码,很不错,谢谢,顺便转载收藏。
有些程序在调试时很难抓住断点(如服务程序),有些程序需要循环无数次,要看每一次或某一次的结果,等等吧!
那就来个简单的写日志程序吧,txt文件生成在debug目录里
- using System;
- using System.Collections.Generic;
- using System.Text;
- using System.IO;
- using System.Windows.Forms;
- namespace Common
- {
- public class Log
- {
- private string logFile;
- private StreamWriter writer;
- private FileStream fileStream = null;
- public Log(string fileName)
- {
- logFile = fileName;
- CreateDirectory(logFile);
- }
- public void log(string info)
- {
- try
- {
- System.IO.FileInfo fileInfo = new System.IO.FileInfo(logFile);
- if (!fileInfo.Exists)
- {
- fileStream = fileInfo.Create();
- writer = new StreamWriter(fileStream);
- }
- else
- {
- fileStream = fileInfo.Open(FileMode.Append, FileAccess.Write);
- writer = new StreamWriter(fileStream);
- }
- writer.WriteLine(DateTime.Now + ": " + info);
- }
- finally
- {
- if (writer != null)
- {
- writer.Close();
- writer.Dispose();
- fileStream.Close();
- fileStream.Dispose();
- }
- }
- }
- public void CreateDirectory(string infoPath)
- {
- DirectoryInfo directoryInfo = Directory.GetParent(infoPath);
- if (!directoryInfo.Exists)
- {
- directoryInfo.Create();
- }
- }
- }
- }
用的时候:
Log log = new Log(AppDomain.CurrentDomain.BaseDirectory + @"/log/Log.txt");
log.log("内容");