70 QDateTime时间戳转换有误

本文记录了在QT环境中使用QDateTime将时间戳转换为格式化时间时遇到的月份错误问题,并提供了一种替代方案,通过使用通用时间函数来实现正确的格式化。

1 前言

        在开发工具中需要用时间戳转换成格式化时间来显示,但引用QT中自带的时间类QDateTime转换时,发现转换时间有误问题,转换的结果时分秒是正确的,但月份确实错误的。因此在未深入研究qt实现情况下,需要得到正确的格式化时间,需要另寻它法。

        本blog对该现象仅进行记录和给出“治标不治本的”解决方法。

2 现象

        首先给QT环境下出常用的时间戳转换格式化时间的方法。

QDateTime QDstarttime = QDateTime::fromTime_t(startTime); //时间戳非毫秒级
QString strStartTime = QDstarttime.toString("yyyy-mm-dd hh:mm:ss");
QDateTime QDstoptime = QDateTime::fromTime_t(stopTime); //时间戳非毫秒级
QString strStopTime = QDstoptime.toString("yyyy-mm-dd hh:mm:ss");

        基于上述代码的转换,对于两个时间戳分别是:1663223732 和 2114352000。转换结果如下图示,时、分、秒是正确的,但是月份是错误的。

&

评论 4
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值