C#简易读写日志

推荐仅在.NET Framework中使用

简易写入日志
csharp 复制代码
/// <summary>
/// 写入日志
/// </summary>
/// <param name="str">写人内容</param>
/// <param name="fileStr">自定义文件名</param>
/// <returns></returns>
private string Log(string str, string fileStr)
{
    try
    {
        //在程序目录创建log文件
        var logPath = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "log");
        //存在则创建
        if (!Directory.Exists(logPath))
        {
            Directory.CreateDirectory(logPath);
        }
        //创建指定日志文件
        var FileStr = logPath + $"\\{fileStr}_{DateTime.Now.ToString("yyyyMMddHHmmss")}.txt";
        using (StreamWriter sw = File.AppendText(FileStr))
        {
            sw.WriteLine(DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss") + ":" + str);
            sw.Flush();
        }
        return FileStr;
    }
    catch (Exception) { return ""; }
}
简易读取日志
csharp 复制代码
 /// <summary>
 /// 简易读取
 /// </summary>
 /// <param name="Path"></param>
 /// <returns></returns>
 private string LogStr(string Path)
 {
     string txt = string.Empty;
     using (StreamReader sr = new StreamReader(Path))
     {
         string line;
         while ((line = sr.ReadLine()) != null)
         {
             txt += line;
         }
     }
     return txt;
 }
简易调用日志
csharp 复制代码
static void Main(string[] args)
{
    var p = new Program();
    //写入
    //var pFile = p.Log("简易日志", "log");
    //Console.WriteLine(pFile);
    //读取
    var pLogStr = p.LogStr("C:\\Users\\admin\\Desktop\\netFramework\\bin\\Debug\\log\\log_20240522140312.txt");
    Console.WriteLine(pLogStr);
}
运行结果

1.写入后返回写入地址

2.根据写入地址读取日志

相关推荐
hez201015 小时前
在 .NET 上构建超大托管数组
c#·.net·.net core·gc·clr
Flynt4 天前
npm v12 来了:allowScripts 默认关闭,我的项目差点跑不起来
安全·npm·node.js
雨落倾城夏未凉6 天前
第四章c#方法-参数数组和可选参数(16)
后端·c#
唐青枫7 天前
线程不是越多越快:C#.NET Thread 生命周期、同步与后台工作线程实战
c#·.net
唐青枫8 天前
别只会反射:C#.NET Emit 动态生成代码实战详解
c#·.net
咕白m6258 天前
.NET 环境下 Word 超链接批量提取方案
c#·.net
用户91721561902118 天前
C# 通信协议增量解析:用状态机处理半包和粘包
c#
冬奇Lab9 天前
Skill 系列(02):Skill 安全风险——三类攻击面的实战测试
人工智能·安全·开源
小码编匠9 天前
C# 工控上位机必备:数据转换工具类与十个核心模块
后端·c#·.net
唐青枫11 天前
别再乱用 StartNew:C#.NET TaskFactory 任务调度实战详解
c#·.net