1
在C++中什麼是有一天能加入到這個格式的日期的最簡單的方法:升壓日期添加有一天,非標準GMT串
「20090629-05:57:43」
可能使用Boost 1.36 - Boost::date
,Boost::posix_date
或任何其他boost或std
庫功能,我對其他庫不感興趣。
到目前爲止,我想出了:
格式字符串(分割日期和時間部分的字符串操作),以便能夠初始化
boost::gregorian::date
,日期預計格式,如:「2009- 06-29 5點57分43" 秒
我
「20090629-05:57:43」
加一天(升壓
date_duration
東西)- 轉換回
to_simple_string
並追加一部分時間(字符串操作)
是否有任何容易/ niftier方式做到這一點?
我正在尋找運行時效率。
對於上述步驟的示例代碼:
using namespace boost::gregorian;
string orig("20090629-05:57:43");
string dday(orig.substr(0,8));
string dtime(orig.substr(8));
date d(from_undelimited_string(dday));
date_duration dd(1);
d += dd;
string result(to_iso_string(d) + dtime);
結果:
20090630-05:57:43
+1,有趣的解決方案,我會看看。我認爲我可以重新使用格式的方面,然後通過它傳遞日期。 – stefanB 2009-06-30 23:03:45