首先获取程序当前目录
QString qsAppDir = QStandardPaths::standardLocations(QStandardPaths::GenericDataLocation).first();
QString qsTimeFile = qsAppDir + "time.dat";
其中time.dat用于存储qt执行操作时的时间。
QFile file(qsTimeFile);
file.open(QIODevice::WriteOnly | QIODevice::Text | QIODevice::Append); file.write(_T("time:").append(QDateTime::currentDateTime().toString("yyyyMMddhhmmss")).toStdString().c_str());
file.write("\n");
file.close();
QIODevice::Append参数表示以文件追加的方式写入,如果需求是每次重新覆盖写入,则可以替换为QIODevice::Truncate
QDateTime::currentDateTime().toString("yyyyMMddhhmmss"))是获取系统时间并且转换为规定格式的时间显示。通常我们在程序中还需要用到当前时间戳,QDateTime::currentDateTime().toTime_t()是精确到秒级的时间戳,如果想使用精确到毫秒级时间戳可以采用QDateTime::currentDateTime().toMSecsSinceEpoch()。可以通过QString::number转换为QString类型,例如:
QString qsSalt = QString::number(QDateTime::currentDateTime().toMSecsSinceEpoch());