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重新构建即可。

具体格式化可参考官方文档,不赘述。

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