[c++] 시간대 및 지역화 처리
std::chrono::system_clock
<chrono>
헤더의 system_clock
클래스는 현재 시간을 시스템 시계로부터 가져오는 데 사용됩니다. 이를 통해 시간대 변환을 처리할 수 있습니다.
#include <chrono>
#include <iostream>
int main() {
auto now = std::chrono::system_clock::now(); // 현재 시간 가져오기
// 시간 출력
std::time_t now_time = std::chrono::system_clock::to_time_t(now);
std::cout << "Current time: " << std::ctime(&now_time) << std::endl;
return 0;
}
std::chrono::zoned_time
C++20부터는 <chrono>
헤더에서 zoned_time
클래스를 사용하여 시간대 및 지역화를 보다 쉽게 처리할 수 있습니다.
#include <chrono>
#include <iostream>
#include <iomanip>
int main() {
auto now = std::chrono::system_clock::now(); // 현재 시간 가져오기
std::string timezone = "Asia/Seoul";
std::chrono::zoned_time zt(std::chrono::locate_zone(timezone), now);
// 시간 출력
std::cout << "Current time in " << timezone << " : " << zt << std::endl;
return 0;
}
C++에서 시간대 및 지역화 처리를 위해 <chrono>
라이브러리를 사용하여 system_clock
및 zoned_time
을 통해 쉽게 처리할 수 있습니다.
더 많은 정보는 cppreference.com에서 확인할 수 있습니다.