boost ptime轉化為時間字串

2021-10-25 18:58:32 字數 2150 閱讀 3452

//物件的定義

boost::posix_time::ptime p(boost::gregorian::date(2010, 3, 5)); //2023年3月5號0點

boost::posix_time::ptime p1(boost::gregorian::date(2010, 3, 5), boost::posix_time::hours(1)); //2023年3月5號1點

boost::posix_time::ptime p2 = boost::posix_time::time_from_string("2010-3-5 01:00:00");

boost::posix_time::ptime p3 = boost::posix_time::from_iso_string("20100505t010000");

//獲取當前時間

boost::posix_time::ptime p4 = boost::posix_time::second_clock::local_time(); //本地時間,秒精度

cout << p4 << endl; //可以直接輸出ptime,2018-apr-11 16:23:54

//boost::posix_time::ptime p4 = boost::posix_time::microsec_clock::local_time(); //本地時間,微妙精度,2018-apr-11 08:23:54.986535

//boost::posix_time::ptime p4 = boost::posix_time::second_clock::universal_time(); //utc時間,微妙精度

//獲取字串表示

cout << boost::posix_time::to_iso_extended_string(p) << endl; //輸出為2010-03-05t00:00:00

cout << boost::posix_time::to_iso_string(p) << endl; //輸出為20100305t000000

cout << boost::posix_time::to_******_string(p) << endl; //輸出為2010-mar-05 00:00:00

注意:ptime型別可以直接可以列印出來!!!!!!

std::string time_to_string(const boost::posix_time::ptime& time)

使用ptime轉化為毫秒:

boost::posix_time::ptime pt = boost::posix_time::second_clock::universal_time();

boost::posix_time::ptime epoch(boost::gregorian::date(1970, boost::gregorian::jan, 1));

std::cout << (pt - epoch).total_milliseconds() << std::endl;

std::cout << std::chrono::duration_cast(std::chrono::system_clock::now().time_since_epoch()).count() << std::endl;

毫秒轉化為日期:

int64_t milli = timestamp + (int64_t)8 * 60 * 60 * 1000;//此處轉化為東八區北京時間,如果是其它時區需要按需求修改

auto mtime = std::chrono::milliseconds(milli);

auto tp = std::chrono::time_point(mtime);

auto tt = std::chrono::system_clock::to_time_t(tp);

std::tm* now = std::gmtime(&tt);

char* buf[512] = ;

sprintf(buf, "%4d-%02d-%02d %02d:%02d:%02d\n", now->tm_year + 1900, now->tm_mon + 1, now->tm_mday, now->tm_hour, now->tm_min, now->tm_sec);

linux shell中,字串時間轉化為時間戳

bin bash 獲取2小時前的時間 log date date d 2 hours ago f t echo log date 獲取2小時前的整點時間 start date date d 2 hours ago f h 00 00 echo start date 將start date字串時間轉化...

獲取當前時間並轉化為轉化為各種格式

在專案中直接把 複製成乙個fortime.js檔案,然後在需要用到的時候import或者require一下,根據需要用 例如 var fortime require utils fortime.js 然後根據需要選擇是 fortime.formattime new date fortime.form...

MySQL中將資料型別從字串轉化為時間型別

定義和用法 date format 函式用於以不同的格式顯示日期 時間資料。語法 date format date,format date引數是合法的日期。format規定日期 時間的輸出格式。可以使用的格式有 格式 描述 a 縮寫星期名 b縮寫月名 c月,數值 d帶有英文本首的月中的天 d月的天,...