Search code examples
c++boostunix-timestampboost-date-time

unix timestamp to boost::posix_time::ptime


I need to convert double with number of seconds since the epoch to ptime. I'm prety sure there must be an easy way to do this, but I couldn't find anything. Thanks.

Edit: The original timestamp is floating point. I can't change it and i don't want to lose the sub-second precision.


Solution

  • after some fiddling around i came up with this:

    ptime(date(1970, 1, 1), time_duration(0, 0, 0, time_duration::ticks_per_second() * 1234567890.0987654321))
    

    I'm not sure this is the best solution, but it seems to do what i need.