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.根据写入地址读取日志

相关推荐
Rabbit_QL15 小时前
【水印添加工具】从零设计一个工程级 Python 图片水印工具:WaterMask 架构与实现
开发语言·python
天“码”行空15 小时前
简化Lambda——方法引用
java·开发语言
大王小生15 小时前
说说CSV文件和C#解析csv文件的几种方式
人工智能·c#·csv·csvhelper·csvreader
z203483152016 小时前
C++对象布局
开发语言·c++
Beginner x_u16 小时前
如何解释JavaScript 中 this 的值?
开发语言·前端·javascript·this 指针
java1234_小锋16 小时前
Java线程之间是如何通信的?
java·开发语言
张张努力变强16 小时前
C++ Date日期类的设计与实现全解析
java·开发语言·c++·算法
feifeigo12317 小时前
基于EM算法的混合Copula MATLAB实现
开发语言·算法·matlab
米羊12117 小时前
Linux 内核漏洞提权
网络·安全·web安全
LYS_061817 小时前
RM赛事C型板九轴IMU解算(4)(卡尔曼滤波)
c语言·开发语言·前端·卡尔曼滤波