MilliSecondOfTheYear - C++ Builder

C++ Builder 參考手冊(cè) ? System::Dateutils ? MilliSecondOfTheYear


這個(gè)日期時(shí)間在這一年的第幾毫秒

頭文件:#include <System.DateUtils.hpp>
命名空間:System::Dateutils
函數(shù)原型:

__int64 __fastcall MilliSecondOfTheYear(const System::TDateTime AValue);

參數(shù):

  • AValue:日期時(shí)間類型變量;

返回值:

  • 這個(gè)日期時(shí)間在這一年的第幾毫秒,從 0 開始:平年 0 - 31535999999,閏年 0 - 31622399999;
  • 1月1日0時(shí)0分0秒0毫秒,是這一年的第 0 毫秒,平年一共 365 天 * 24 * 60 * 60 * 1000 = 31536000000 毫秒,12月31日23時(shí)59分59秒999毫秒為這一年的最后一毫秒,即第 31535999999 毫秒;閏年一共 366 天 * 24 * 60 * 60 * 1000 = 31622400000 毫秒,12月31日23時(shí)59分59秒999毫秒為這一年的最后一毫秒,即第 31622399999 毫秒。

例:現(xiàn)在是今年的第幾毫秒,用兩種方法:用函數(shù)獲取、用計(jì)算天數(shù)的方法 (兩個(gè)日期時(shí)間相減得到的是一個(gè) double 類型的天數(shù),小數(shù),例如 0.5 為 12 小時(shí))。

#include <System.DateUtils.hpp>
void __fastcall TForm1::Button1Click(TObject *Sender)
{
    TDateTime dt = Sysutils::Now(); // 現(xiàn)在的日期和時(shí)間
    Memo1->Lines->Add(L"現(xiàn)在時(shí)刻:" + FormatDateTime(L"yyyy/mm/dd hh:nn:ss.zzz", dt));
    Memo1->Lines->Add(String().sprintf(L"現(xiàn)在是今年的第 %lld 毫秒", MilliSecondOfTheYear(dt)));

    TDateTime t0 = StartOfTheYear(dt); // 今年1月1日0時(shí)
    Memo1->Lines->Add(L"今年開始:" + FormatDateTime(L"yyyy/mm/dd hh:nn:ss.zzz", t0));

    double lfDays = dt - t0; // 今天是今年的第幾天 (小數(shù),例如 0.5 為 12 小時(shí))
    Memo1->Lines->Add(String().sprintf(L"今天是今年的第 %d 天", (int)lfDays));
    long long llMillSecs = lfDays * 24 * 60 * 60 * 1000 + 0.5; // 現(xiàn)在是今年的第幾毫秒
    Memo1->Lines->Add(String().sprintf(L"現(xiàn)在是今年的第 %lld 毫秒", llMillSecs));
}

運(yùn)行結(jié)果:


相關(guān):


C++ Builder 參考手冊(cè) ? System::Dateutils ? MilliSecondOfTheYear

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容