日志文件操作

来源:互联网 发布:网络电视怎么接机顶盒 编辑:程序博客网 时间:2024/04/29 19:58

/// <summary>
        /// author:james
        /// Date:2012
        /// 根据日期生成日志文件,并判断日志文件大小如果大于3M将自动安装序号生成新的日志文件。
        /// </summary>
        /// <param name="txt">文件内容</param>

public static void ErrorLogManage(string txt)
        {
            string ErrorFilePath = ConfigLibrary.AppPath + @"SysLog\ErrorLog\";
            FileStream fs = null;
            try
            {

                string strTxt = "";
                int js = 0;
                string strFile = ErrorFilePath + DateTime.Now.Year  + DateTime.Now.Month.ToString().PadLeft(2, '0')  + DateTime.Now.Day.ToString().PadLeft(2, '0') + "_0_Log.txt";
                if (!Directory.Exists(ErrorFilePath))
                {
                    Directory.CreateDirectory(ErrorFilePath);
                }
                while (true)
                {
                    if (File.Exists(strFile))
                    {
                        FileInfo fileInfo = new FileInfo(strFile);
                        if (fileInfo.Length > 1024 * 1024 * 3)//文件大于3M
                        {
                            strFile = ErrorFilePath + DateTime.Now.Year  + DateTime.Now.Month.ToString().PadLeft(2, '0')  + DateTime.Now.Day.ToString().PadLeft(2, '0') + "_" + (js++) + "_Log.txt";
                        }
                        else
                        {
                            break;
                        }
                    }
                    else
                    {
                        break;
                    }
                }
                   
               
                strTxt += "--------------------------------------------------------------------------------------\r\n";
                strTxt += txt + "\r\n";
               
                //文件夹是否存在,不存在创建
                fs = new FileStream(strFile, FileMode.Append);
                byte[] data = new UTF8Encoding().GetBytes(strTxt);
                fs.Write(data, 0, data.Length);
            }
            finally
            {
                fs.Flush();
                fs.Close();
            }
           
        }

原创粉丝点击