Computer >> 컴퓨터 >  >> 프로그래밍 >> C#

C#으로 파일의 마지막 쓰기 시간(Last Write Time) 가져오는 방법

C#에서 파일의 마지막 쓰기 시간(마지막 수정 시간)을 확인하려면 LastWriteTime 속성을 사용하면 됩니다. 이 속성은 FileInfo 클래스와 DateTime 클래스를 함께 활용하여 파일의 시간 정보를 손쉽게 조회할 수 있도록 해줍니다.

먼저 FileInfo 객체를 생성하고, 해당 객체에서 CreationTime, LastAccessTime, LastWriteTime 등의 속성에 접근하는 방식입니다.

FileInfo file = new FileInfo("amit.txt");
DateTime dt = file.CreationTime;
dt = file.LastWriteTime;

전체 예제 코드

아래 예제는 텍스트 파일을 생성한 뒤, 파일의 생성 시간, 마지막 접근 시간, 마지막 쓰기 시간을 순서대로 출력하는 완전한 코드입니다.

using System.IO;
using System;
public class Program {
    public static void Main() {
        using (StreamWriter sw = new StreamWriter("amit.txt")) {
            sw.WriteLine("Welcome!");
        }
        FileInfo file = new FileInfo("amit.txt");
        // 파일 생성 시간
        DateTime dt = file.CreationTime;
        Console.WriteLine(dt);
        // 마지막 접근 시간
        dt = file.LastAccessTime;
        Console.WriteLine(dt);
        // 마지막 쓰기 시간
        dt = file.LastWriteTime;
        Console.WriteLine(dt);
    }
}

실행 결과

9/5/2018 5:17:27 AM
9/5/2018 5:17:27 AM
9/5/2018 5:17:27 AM

주요 포인트 정리

  • LastWriteTime: 파일 내용이 마지막으로 수정(기록)된 시간을 반환합니다.
  • CreationTime: 파일이 처음 생성된 시간을 반환합니다.
  • LastAccessTime: 파일에 마지막으로 접근한 시간을 반환합니다.
  • 세 가지 속성 모두 DateTime 형식으로 반환되므로, 날짜 형식 변환이나 비교 연산에 그대로 활용할 수 있습니다.

파일이 실제로 존재하지 않는 경우에는 기본값인 1601년 1월 1일 자정(UTC)이 반환될 수 있으므로, file.Exists 속성으로 파일 존재 여부를 먼저 확인하는 것이 안전합니다.