C# 将日志写入文本文件

本文介绍了一种用于记录文本文件日志的方法,包括两种版本:基本版本直接写入指定路径,而高级版本能够自动创建文件夹目录进行存储。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

<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>



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值