Код: Выделить всё
#include
using namespace boost::posix_time;
// examples
std::string ts("2019-11-01T11:55:42");
ptime t2(from_iso_extended_string(ts))
< /code>
Действительно, он работает нормально до тех пор, пока строка не имеет информации о часовом поясе, например, 2019-11-01T11: 55: 42 Однако, как только включена информация о во времени, я получаю исключение. Следующие два не работают: < /p>
2019-11-01T11:55:42+0100
2019-11-01T11:55:42+01:00
< /code>
Какие еще способы доступны в C ++, чтобы проанализировать строку ISO8601 и преобразовать ее во что -то, что можно легко сравнить со временем настенных часов, чтобы определить, является ли временная метка в прошлом? Если ваш ответ подразумевает, что они должны быть в определенном часовом поясе, пожалуйста, также поставьте код для преобразования из любого смещения UTC в желаемый часовой пояс.>
Подробнее здесь: https://stackoverflow.com/questions/795 ... ation-in-c
Мобильная версия