file_clock

file_clock (파일 시스템이 쓰는 시계)

std::filesystem::file_time_type이 쓰는 시계의 별칭이에요. <chrono> 헤더, C++20부터.

출처: cppreference

본문

std::chrono::file_clock은 파일 시스템의 파일 시간 타입에 쓰이는 시계의 별칭이에요.

using file_clock = /* see below */;

epoch는 지정되어 있지 않아요. file_clockTrivialClock 요구사항을 만족해요.

시점 타입 계열

파일 시간을 다룰 때는 file_time 별칭을 써요.

template<class Duration>
using file_time = std::chrono::time_point<std::chrono::file_clock, Duration>;

std::filesystem::file_time_type은 곧 std::chrono::file_time<std::chrono::system_clock::duration>(구현에 따라 다름) 같은 형태예요. 또 스트림 출력 연산자 operator<<(std::chrono::file_time)(C++20)로 파일 시간을 출력할 수 있어요.

auto ft = std::filesystem::last_write_time("somefile.txt");
// ft는 file_time 타입
auto tp = std::chrono::file_clock::to_sys(ft);  // system_clock 시점으로 변환

to_sys/from_sys(구현이 지원하면)로 system_clock과 변환할 수 있어, 파일의 마지막 수정 시각을 달력 시간으로 보여줄 때 유용해요.

더 알아보기 (Learn more)

cppreference