Asp.Net写文本日志

时间:2023-03-08 16:26:30

底层代码:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text; namespace AddLog
{
/// <summary>
/// 记录:文件以时间命名
/// </summary>
public class Log
{
private static System.IO.StreamWriter swt;
private static System.IO.FileStream fs;
/// <summary>
/// 判断文件是否存在
/// </summary>
private static bool IsExsFile = false;
public static void Init()
{
Init("");
}
/// <summary>
/// 记录初始化
/// </summary>
/// <param name="DirName">文件夹名字:默认为Log</param>
public static void Init(string DirName)
{
string LogPath = string.Empty;
if (!string.IsNullOrWhiteSpace(DirName))
{
LogPath = Environment.CurrentDirectory + "\\" + DirName;
}
else
{
LogPath = Environment.CurrentDirectory + "\\Log";
}
if (!System.IO.Directory.Exists(LogPath))
{
System.IO.Directory.CreateDirectory(LogPath);
}
string LogFile = LogPath + "\\" + DateTime.Now.ToString("yyyy-MM-dd") + ".txt"; if (!System.IO.File.Exists(LogFile))
{
fs = new System.IO.FileStream(LogFile, System.IO.FileMode.OpenOrCreate, System.IO.FileAccess.ReadWrite);
swt = new System.IO.StreamWriter(fs, Encoding.UTF8);
}
else
{
IsExsFile = true;
swt = new System.IO.StreamWriter(LogFile,true);
} }
/// <summary>
/// 清除缓存
/// </summary>
public static void Clear()
{
swt.Flush();
swt.Close();
swt.Dispose();
if(!IsExsFile)
{
fs.Close();
fs.Dispose();
} }
/// <summary>
/// 写操作
/// </summary>
/// <param name="strTxt">写入文本</param>
public static void Write(string strTxt)
{
if (swt != null)
{
swt.WriteLine(DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss.fff") + "\t" + strTxt);
}
}
}
}

调用代码:

AddLog.Log.Init();
AddLog.Log.Write("测试");
AddLog.Log.Clear();