• C# 创建错误日志


        在开发中,会经常遇到各种错误,只有捕获到了这些错误,才有可能解决问题。因此记录错误显得很重要。以下是创建错误日志的代码

            /// <summary>
            /// 存放错误日志的路径
         /// </summary>
            private static string errorDir = System.IO.Directory.GetCurrentDirectory().Split(new String[] { @"in" }, StringSplitOptions.None)[0] + @"Error";
            /// <summary>
            /// 捕获错误信息
          /// </summary>
            /// <param name="sql">错误语句</param>
            /// <param name="errorDetails">错误详细信息</param>
            public static void CaptureError(string sql, string errorDetails)
            {
                if (!System.IO.Directory.Exists(errorDir))
                {
                    System.IO.Directory.CreateDirectory(errorDir);//构建存放错误日志的路径
                }          
                string filePath = errorDir + @"errorLog.txt";
                if (!System.IO.File.Exists(filePath))
                {
                    System.IO.File.Create(filePath).Close();//创建完文件后必须关闭掉流
                }
                System.IO.File.SetAttributes(filePath, System.IO.FileAttributes.Normal);
                System.IO.StreamWriter sr = new System.IO.StreamWriter(filePath, true);
                sr.WriteLine("==============="+DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")+"=============");
                sr.WriteLine("执行出错的语句:");
                sr.WriteLine(sql);
                sr.WriteLine("错误的详细信息:");
                sr.WriteLine(errorDetails);
                sr.Close();//关闭写入的流
            }      

         这里需要注意的是:System.IO.File.Create(filePath)的返回类型是FileStream,因此在创建完文件后应该立刻关闭流。

  • 相关阅读:
    小工具之文件整合
    [JavaWeb基础] 031.dom4j写入xml的方法
    AES128_CBC模式加密
    eatwhatApp开发实战(九)
    [Objective-C] 021 KVC、KVO
    eatwhatApp开发实战(八)
    eatwhatApp开发实战(七)
    [Objective-C] 020_ Block
    eatwhatApp开发实战(六)
    年终总结--我的2019
  • 原文地址:https://www.cnblogs.com/wangjianhui008/p/3246406.html
Copyright © 2020-2023  润新知