14 Eylül 2017 Perşembe

std::put_time metodu

Giriş
Şu satırı dahil ederiz.
#include <iomanip>
std::tm (broken time) yapısını formatlı olarak stream'e yazmak için kullanılır. Bu sınıfın tam tersi işlemini std::get_time ile yaparız.

C ile kodluyorsak strftime() bu metod ile aynı işi yapar.

%c
Locale'e göre zamanı formatlayarak yazar. Şöyle yaparız.
std::tm = ...;
std::cout << std::put_time(&t, "%c") << "\n";
%F
ISO 8601'e göre yıl ay gün (örneğin 2017-09-14) çıktısı alırız.

Örnek
Şöyle yaparız.
std::tm = ...;
std::stringstream stream;
stream << std::put_time (tm, "%F");
Örnek
Şöyle yaparız
time_t now = time(0);
std::string str = std::put_time(localtime(&now), "%F-%H-%M-%S");
std::cout << str;
Çıktı olarak şunu alırız
2017-09-14-05-54-02
Gün - Ay - Yıl - Saat - Dakika - Saniye
Şöyle yaparız.
std::tm = ...;
std::cout << std::put_time (&tm, "%d-%m-%Y %H-%M-%S");


Hiç yorum yok:

Yorum Gönder