1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283 |
- using System;
- using System.Collections.Generic;
- using System.IO;
- using System.Linq;
- using System.Windows.Forms;
- namespace StandardLibrary
- {
- //报警弹窗+运行Log
- public class LogMgr : SingletonTemplate<LogMgr>
- {
- private bool errShow = false;
- //运行
- public void WriteRunLog(string message)
- {
- string filePath = AppDomain.CurrentDomain.BaseDirectory + "\\RunLog\\";
- string fileName = DateTime.Now.ToString("yyyy-MM-dd") + ".txt";
- string time = DateTime.Now.ToString("HH:mm:ss");
- string writeMsg = time + " " + message + "\r\n";
- WriteLog(filePath + fileName, writeMsg);
- }
- //报警
- public void WriteErrLog(string message)
- {
- if (!errShow)
- {
- errShow = true;
- MessageBox.Show(message);
- errShow = false;
- }
- string filePath = AppDomain.CurrentDomain.BaseDirectory + "\\ErrorLog\\";
- string fileName = DateTime.Now.ToString("yyyy-MM-dd") + ".txt";
- string time = DateTime.Now.ToString("HH:mm:ss");
- string writeMsg = time + " " + message + "\r\n";
- WriteLog(filePath + fileName, writeMsg);
- }
- /// <summary>
- /// 写入Log文件
- /// </summary>
- /// <param name="logFile">文件路径+文件名(包含扩展名)</param>
- /// <param name="log">写入内容</param>
- /// <returns></returns>
- private bool WriteLog(string logFile, string log)
- {
- if (!File.Exists(logFile)) NewTxtFile(logFile); //判断文件是否存在,不存在则新建
- try
- {
- using (FileStream fileStream = new FileStream(logFile, FileMode.Open, FileAccess.Write)) //写入文件
- {
- StreamWriter streamWriter = new StreamWriter(fileStream);
- //sw.BaseStream的Position或Seek()可移动文件流指针到的任意位置。
- streamWriter.BaseStream.Seek(0, SeekOrigin.End); //在txt末尾写入
- streamWriter.Write(log); //写入txt文件内容
- streamWriter.Flush();
- streamWriter.Close();
- fileStream.Close();
- }
- return true;
- }
- catch { return false; }
- }
- /// <summary>
- /// 新建txt文件,
- /// </summary>
- /// <param name="txtFile">文件路径+文件名(包含扩展名)</param>
- private void NewTxtFile(string txtFile)
- {
- string path = txtFile.Substring(0, txtFile.LastIndexOf("\\"));
- if (!Directory.Exists(path))
- Directory.CreateDirectory(path); //判断路径是否存在,不存在则创建文件夹
- if (!File.Exists(txtFile)) //判断文件是否存在,不存在则创建TXT文件
- {
- using (FileStream fileStream = new FileStream(txtFile, FileMode.Create, FileAccess.Write))
- {
- fileStream.Close();
- }
- }
- }
- }
- }
|