Hello,
i think that i've found bug in date time library or maybe i made something wrog.
SAMPLE CODE:
#include <boost/date_time/posix_time/posix_time.hpp>
#include <iostream>
using namespace boost::posix_time;
int main( int argc, char** argv )
{
time_t t = time( 0 );
std::cout << "time_t: " << ctime( &t ) << std::endl;
struct tm* t2 = localtime( &t );
std::cout << "struct tm: " << asctime( t2 ) << std::endl;
ptime t3 = from_time_t( t );
std::cout << "ptime from time_t: " << to_simple_string( t3 ) << std::endl;
ptime t4 = ptime_from_tm( *t2 );
std::cout << "ptime from tm: " << to_simple_string( t4 ) << std::endl;
return 0;
}
OUTPUT:
time_t: Fri May 1 14:22:01 2009
struct tm: Fri May 1 14:22:01 2009
ptime from time_t: 2009-May-01 12:22:01 // incorrect result
ptime from tm: 2009-May-01 14:22:01