Exemplo n.º 1
0
        /// <summary>
        /// 删除文件夹及子文件内文件
        /// </summary>
        /// <param name="path">文件夹路径</param>
        public static void DeleteALLFiles(LogAppendToForms logAppendToForms, string path, int beforeDay)
        {
            string jobType    = "DelLogFiles";
            string logMessage = string.Empty;

            try
            {
                DirectoryInfo fatherFolder = new DirectoryInfo(path);
                //删除当前文件夹内文件
                FileInfo[] files = fatherFolder.GetFiles();
                foreach (FileInfo f in files)
                {
                    string   filePath = f.FullName;
                    string   fileName = Path.GetFileName(filePath);
                    FileInfo file     = new FileInfo(filePath);
                    DateTime dt       = DateTime.Parse(file.CreationTime.ToShortDateString());
                    TimeSpan ts       = DateTime.Parse(DateTime.Now.ToShortDateString()) - dt;

                    int day = ts.Days;
                    if (day > beforeDay)
                    {
                        File.Delete(file.FullName);
                        logMessage = string.Format("【{0}】删除日志文件成功!日志路径:{1}", "清除日志计划", filePath);
                        Log4NetHelper.LogMessage(logAppendToForms, true, logMessage, jobType);
                        // Console.WriteLine(DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss") + " " + msg);
                    }
                }
                if (Directory.Exists(path))
                {
                    if (Directory.GetDirectories(path).Length == 0 && Directory.GetFiles(path).Length == 0)
                    {
                        try
                        {
                            fatherFolder.Delete();
                            logMessage = string.Format("【{0}】删除日志文件夹成功!日志路径:{1}", "清除日志计划", path);
                            Log4NetHelper.LogMessage(logAppendToForms, true, logMessage, jobType);
                        }
                        catch (Exception ex)
                        {
                            logMessage = string.Format("【{0}】删除日志文件夹失败!失败原因:{1}", "清除日志计划", ex.Message);
                            Log4NetHelper.LogError(logAppendToForms, true, logMessage, jobType);
                        }
                    }
                    else
                    {
                        foreach (DirectoryInfo childFolder in fatherFolder.GetDirectories())
                        {
                            path = childFolder.FullName;
                            DeleteALLFiles(logAppendToForms, path, beforeDay);
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                logMessage = string.Format("【{0}】删除日志文件失败!失败原因:{1}", "清除日志计划", ex.Message);
                Log4NetHelper.LogError(logAppendToForms, true, logMessage, jobType);
            }
        }
Exemplo n.º 2
0
 /// <summary>
 /// LogMessage 显示日志
 /// </summary>
 /// <param name="logMessage"></param>
 public static void LogMessage(LogAppendToForms logAppendToForms, string logMessage)
 {
     try
     {
         if (logAppendToForms != null)
         {
             logAppendToForms._LogMessage = logMessage;
             logAppendToForms._Color      = Color.White;
             logAppendToForms.Display();
         }
         Log4netUtil.Log4NetHelper.Info(logMessage, @"LogDisplay");
     }
     catch (Exception ex)
     {
         Log4netUtil.Log4NetHelper.Error(string.Format("消息{0};日志显示UI界面失败,失败原因{1}", logMessage, ex.Message), "QuartzManager");
     }
 }