QT 隨機時間 時間戳和時間之間的轉換 時間格式失效問題

項目中需要用到指定某個時間範圍內的隨機時間,遂寫下備忘。

QString MainWindow::generateTime(){
    int timeBegin,timeNow,t;
    QString str;
    QDateTime time=QDateTime::currentDateTime();//獲取當前時間
    QDateTime timeFinal;
    timeNow=time.toTime_t();//時間轉換爲時間戳
    timeBegin=1483536993;//https://tool.lu/timestamp/這個時間戳轉換網站 這邊默認開始時間固定,也可以隨時指定,加在函數變量中即可
    t=rand()%(timeNow-timeBegin); //獲取一個隨機數
    t=timeNow-t;//當前時間減去隨機數得到目標隨機時間的時間戳
    timeFinal=QDateTime::fromTime_t(t);//時間戳轉爲時間
    str=timeFinal.toString("yyyy-MM-dd hh:mm:ss");//時間輸出的格式化
    return str;
}

我也碰到時間輸出格式化不成功的問題,一番摸索,重新編譯執行qmake重新構建即可。

具體格式化可參考官方文檔,不贅述。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章