QT如何快速獲取當前系統的年、月、日、時、分、秒、毫秒的時間整數值,包括window系統和linux系統的
雖然QDateTime可以獲取到毫秒時間,但不知道如何快速分解出這7個整數值(雖然可以通過toString(...)函式獲得字串,但不是我需要的快速獲得7個整數值的目標啊!)
uj5u.com熱心網友回復:
QDateTime可以從date()和time()取到QDate和QTimeQDate有year(), month(), day()
QTime有hour(), minute(), second(), msec()
uj5u.com熱心網友回復:
CurrentDateTime getTime(){
//年-月-日(YYmmdd) 時:分:秒(HHMMSS) 毫秒(MS) 微秒(USec) 納秒(NSec)
time_t timep;
time (&timep);
CurrentDateTime date;
strftime(date.YMD_Str, sizeof(date.YMD_Str), "%Y-%m-%d",localtime(&timep) );
strftime(date.HMS_Str, sizeof(date.HMS_Str), "%H:%M:%S",localtime(&timep) );
//毫秒
struct timeb tb;
ftime(&tb);
sprintf(date.MS_Str,"%03d",tb.millitm);
//微秒
struct timeval usectime;
//long usec = 0;
gettimeofday(&usectime, NULL);
//usec = usectime.tv_sec * 1000000 + usectime.tv_usec;
//printf("usectime:%ldus,%ldus\n",usec,usectime.tv_usec); //340483us
snprintf(date.USec_Str,8,"%06ld",usectime.tv_usec);
//納秒
//long nsec = 0;
struct timespec nsectime;
clock_gettime(CLOCK_REALTIME, &nsectime);
//nsec = nsectime.tv_sec * 1000000000 + nsectime.tv_nsec;
//printf("nsectime:%ldns,%ldns\n",nsec,nsectime.tv_nsec); //340487042ns
snprintf(date.NSec_Str,14,"%09ld",nsectime.tv_nsec);
return date;
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/221119.html
標籤:Qt
上一篇:Run a simple hello android studio application offline or online mode?
