using System; using System.IO; namespace EC.Utils { public class FileUnitEx { /// /// 定期清理日志 /// /// 日志目录 /// 日志保留天数 public static void RegularClearLog(string[] dirArr, int retentionDays) { try { foreach (string dir in dirArr) { string[] files = Directory.GetFiles(dir, "*.txt", SearchOption.AllDirectories); if (files.Length <= 0) continue; foreach (string file in files) { TimeSpan ts = DateTime.Now.Subtract(new FileInfo(file).LastWriteTime); if (ts.Days > retentionDays) File.Delete(file); } } } catch (Exception) { } } /// /// example: CustomLog("RequestBoxType\\", hexStr); /// /// /// public static void CustomLog(string subPath, string msg) { var LogMethod = typeof(FileUnit).GetMethod("Log", System.Reflection.BindingFlags.NonPublic | System.Reflection.BindingFlags.Static); LogMethod.Invoke(null, new object[] { subPath, msg }); } } }