有些程式在調試時很難抓住斷點(如服務程式),有些程式需要迴圈無數次,要看每一次或某一次的結果,等等吧。
那就來個簡單的寫日誌程式吧,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("內容");