数値をゼロで埋めずに boost::posix_time::ptime オブジェクトをフォーマットするにはどうすればよいですか?
たとえば、 ではなく6/7/2011 6:30:25 PM
表示したい。 06/07/2011 06:30:25 PM
.NET では、フォーマット文字列は "m/d/yyyy h:mm:ss tt" のようなものになります。
アイデアを得るために、間違った方法で行うコードを次に示します。
boost::gregorian::date baseDate(1970, 1, 1);
boost::posix_time::ptime shiftDate(baseDate);
boost::posix_time::time_facet *facet = new time_facet("%m/%d/%Y");
cout.imbue(locale(cout.getloc(), facet));
cout << shiftDate;
delete facet;
Output: 01/01/1970