используя to_iso_extended_string с датой повышения

Я пытаюсь преобразовать d2 в строку вида «2011-08-02», чтобы я мог передать это в свою инструкцию sql. Согласно сайту повышения, to_iso_extended_string должен возвращать этот формат, но вместо этого я получаю следующее: «2011-Aug-02».

date today(day_clock::local_day());
date_duration dd(30);
date d2=today-dd;
std::string to_iso_extended_string(date d2);

как тогда преобразовать дату в строку в формате гггг-мм-дд.


person itcplpl    schedule 01.09.2011    source источник
comment
Исправьте свой тестовый код. Это сломано.   -  person wilx    schedule 01.09.2011


Ответы (1)


Я только что проверил это, и он печатает для меня 2011-08-02:

#include <iostream>
#include <string>
#include <boost/date_time.hpp>

namespace bg = boost::gregorian;

int
main ()
{
    bg::date today (bg::day_clock::local_day());
    bg::date_duration dd(30);
    bg::date d2 = today - dd;
    std::string str(to_iso_extended_string(d2));
    std::cout << str << "\n";
}
person wilx    schedule 01.09.2011