C# 将日志写入文本文件

简介: <span style="font-size:14px;"> <span style="white-space:pre"> </span>/// <summary> /// 记录文本文件日志方法 /// </summary> /// <param name="FileCon
 
 

<span style="font-size:14px;"> <span style="white-space:pre">	</span>/// <summary>
        /// 记录文本文件日志方法
        /// </summary>
        /// <param name="FileContent">需要记录的文件内容</param>
        /// <param name="TxtFileName">保存的文件名</param>
        /// <param name="ErrMsg">错误信息</param>
        /// <returns></returns>
        public static bool WriteFile(string FileContent, string TxtFileName, out string ErrMsg)
        {
            ErrMsg = string.Empty;
            StreamWriter writer = null;
            string sCurDate = System.DateTime.Now.ToString("yyyy-MM-dd");
            string sFile = sCurDate + TxtFileName + ".txt";
            sFile = "D:\\Log\\Log001.txt";
            try
            {
                if (File.Exists(sFile))
                    writer = new StreamWriter(sFile, true, System.Text.Encoding.GetEncoding("UTF-8"));
                else
                    writer = new StreamWriter(sFile, false, System.Text.Encoding.GetEncoding("UTF-8"));
                string sDateTime = DateTime.Now.ToString("yyyy-MM-dd HH:mm:sss");
                writer.WriteLine("<" + sDateTime + "> " + " " + FileContent);
            }
            catch (IOException e)
            {
                ErrMsg = e.Message;
                return false;
            }
            finally
            {
                if (writer != null)
                    writer.Close();
            }
            return true;
        }</span>

小注:
         路径文件夹需要服务everyone完全的权限。
版本二(可以创建文件夹目录)
<span style="font-size:14px;">  /// <summary>
        /// 记录文本文件日志方法
        /// </summary>
        /// <param name="FileContent">需要记录的文件内容</param>
        /// <param name="TxtFileName">保存的文件名</param>
        /// <param name="SubFolder">子文件名</param>
        /// <param name="ErrMsg">错误信息</param>
        /// <returns></returns>
        public static bool WriteFile(string FileContent, string TxtFileName, string SubFolder, out string ErrMsg)
        {
            ErrMsg = string.Empty;
            StreamWriter writer = null;
            string sCurDate = System.DateTime.Now.ToString("yyyy-MM-dd");
            string sFile = sCurDate + TxtFileName + ".txt";
            string sFolder = string.Empty;
            if (SubFolder != null && SubFolder.Trim().Length > 0)
            {
                sFile = System.AppDomain.CurrentDomain.SetupInformation.ApplicationBase + "Log\\" + SubFolder + "\\" + sFile;
                sFolder = System.AppDomain.CurrentDomain.SetupInformation.ApplicationBase + "Log\\" + SubFolder;
            }
            else
            {
                sFile = System.AppDomain.CurrentDomain.SetupInformation.ApplicationBase + "Log\\" + sFile;
                sFolder = System.AppDomain.CurrentDomain.SetupInformation.ApplicationBase + "Log\\";
            }
            try
            {
                if (!Directory.Exists(sFolder))
                {
                    Directory.CreateDirectory(sFolder);
                }
                if (File.Exists(sFile))
                {
                    writer = new StreamWriter(sFile, true, System.Text.Encoding.GetEncoding("UTF-8"));
                }
                else
                {
                    writer = new StreamWriter(sFile, false, System.Text.Encoding.GetEncoding("UTF-8"));
                }
                string sDateTime = DateTime.Now.ToString("yyyy-MM-dd HH:mm:sss");
                writer.WriteLine("<" + sDateTime + "> " + " " + FileContent);
            }
            catch (IOException e)
            {
                ErrMsg = e.ToString();
                return false;
            }
            finally
            {
                if (writer != null)
                {
                    writer.Close();
                }
            }
            return true;
        }</span>



相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
相关文章
|
6月前
|
移动开发
二进制文件与文本文件的区别
二进制文件与文本文件的区别
|
10月前
kettle根据不同的作业分类输出对应的日志文件
kettle根据不同的作业分类输出对应的日志文件
163 0
|
11月前
|
Python
一日一技:loguru 如何把不同的日志写入不同的文件中
一日一技:loguru 如何把不同的日志写入不同的文件中
442 0
C#编程-35:写入读取文本文件
C#编程-35:写入读取文本文件
|
iOS开发 C++
C++文件读写操作分析文本文件与二进制文件
文本文件 写文件 写文件步骤如下: 1. 包含头文件 #include <fstream> 2. 创建流对象 ofstream ofs; 3. 打开文件 ofs.open("文件路径",打开方式); 4. 写数据 ofs << "写入的数据"; 5. 关闭文件 ofs.close(); 文件打开方式: 打开方式 解释 ios::in 为读文件而打开文件 ios::out 为写文件而打开文件 ios::ate 初始位置:文件尾 ios::app 追加方式写文件 ios::trunc 如果文件存在先删除,再创建 ios::binary 二进制方式
342 0
C++文件读写操作分析文本文件与二进制文件
使用FileStream向txt格式的文本文件 "追加" 新内容并读取
原文:使用FileStream向txt格式的文本文件 "追加" 新内容并读取 1 //得到文件路径。 2 static string filePath = AppDomain.CurrentDomain.BaseDirectory+"\\TxtFile.txt"; 3 static void Main(string[] args) 4 { 5   //调用写入方法。
905 0
|
开发工具 git Python
Ropper - 显示有关不同文件格式的二进制文件的信息
版权声明:转载请注明出处:http://blog.csdn.net/dajitui2024 https://blog.csdn.net/dajitui2024/article/details/79396458 ...
1396 0