Language/C#
[C#] 파일 생성 일자 비교 후 이전 날짜 파일 삭제하기
잔소리대마왕
2023. 3. 14. 14:57
C#을 사용하여 일정 기간 이전에 만들어진 로그 파일을 삭제하는 서비스를 만들어보았습니다.
- 삭제할 기준의 날짜를 설정한다.
- 해당 기준 이전의 파일이 txt파일 경우에 삭제한다.
1. C# 소스
try
{
// 제거할 날짜 범위 (15일)
byte Days = CAppConfig.cServiceInfo.MAX_STORAGE_DATE;
string deletePath = @"C:\\Logs\\";
DirectoryInfo di = new DirectoryInfo(deletePath);
if (di.Exists)
{
DirectoryInfo[] dirInfo = di.GetDirectories();
// 삭제 날짜 기준 -days(15일)
string IDate = DateTime.Today.AddDays(-Days).ToString("yyyyMMdd");
foreach (DirectoryInfo dir in dirInfo)
{
foreach (FileInfo file in dir.GetFiles())
{
// 확장자
if(file.Extension != ".txt")
{
continue;
}
// 해당 날짜 보다 작으면 삭제
if (IDate.CompareTo(file.LastWriteTime.ToString("yyyyMMdd")) > 0)
{
file.Delete();
logger.LogInformation($"[제거된 파일] {file.Name}");
}
}
logger.LogInformation($"{dir.Name} 디렉토리 완료");
}
}
}