Как перевести тип std::chrono::system_clock::time_point в string?
Как перевести тип std::chrono::system_clock::time_point в std::string?
Ответы (1 шт):
Автор решения: KoVadim
→ Ссылка
Вот три разных варианта, выбирайте
#include <iostream>
#include <vector>
#include <chrono>
#include <ctime>
#include <iomanip>
int main()
{
auto now = std::chrono::system_clock::now();
auto tt = std::chrono::system_clock::to_time_t(now);
{
// просто вывод в консоль
std::cout << std::put_time(std::localtime(&tt), "%F %T") << '\n';
}
{
// выводим в строковый поток, потом уже в строку
std::stringstream ss;
ss << std::put_time(std::localtime(&tt), "%F %T");
std::string st = ss.str();
std::cout << st << '\n';
}
{
// в массив символов, потом выводим, но для программистов на си это уже строка
char buf[100];
strftime(buf, 100, "%F %T", std::localtime(&tt));
std::cout << buf;
}
}