Я хочу использовать библиотеку date_time
в boost для представления времени в моем приложении. Это приложение будет генерировать каналы Atom, которые в свою очередь назначают метки времени в формате, указанном в RFC 3339 , например, «1990-12-31T23: 59: 60Z» или «1990-12-31T15: 59». : 60-08: 00"
.
Итак, как мне отформатировать время в соответствии с этим RFC?
Я весь день читаю документацию по вводу / выводу даты и времени , и я не могу понять, как поставить Z в конце, когда мне это нужно. Кроме того, RFC поддерживает дополнительную дробную секунду, но только одну ее цифру (например, «1990-12-31T23: 59: 60.5Z») (*). Кажется, я тоже не могу понять, как это сделать.
Я всегда мог написать свою собственную процедуру форматирования, которая считывает различные необходимые поля, но мне кажется, что она работает против структуры date_time
библиотеки.
Есть ли у вас опыт написания средств форматирования для этой библиотеки? Или я делаю не то?
(*): Мне кажется, что ABNF, указанный в RFC, допускает дробные секунды только с одной цифрой, но примеры в том же RFC имеют дробные секунды с двумя цифрами. Что это должно означать?