我试过的std :: string转换成的boost ::公历日期::这样:的boost ::阳历::从STD日期:: string的
#include <iostream>
#include "boost/date_time/gregorian/gregorian.hpp"
int main(int argc, char *argv[])
{
std::string s_date = "1922-02-29";
std::stringstream ss(s_date);
boost::gregorian::date_input_facet *df = new boost::gregorian::date_input_facet("%Y-%m-%d");
ss.imbue(std::locale(ss.getloc(), df));
date d;
ss>>d;
std::cout<<d<<std::endl;
}
但不幸的是我只收到“一事─一个最新的时间”。我做错了什么?有没有更容易的方法来将字符串转换为这种流行的形式来提升:: gregorian:date?
明显的答案。我从文件中得到格式不正确的日期,并且没有事件认为这个问题可能与我的代码相关。我想你有boost :: gregorian :: from_string在脑海中。 – Dejwi