我必须通过QDateTime :: fromString方法将QString转换为QDateTime。我有QString对象,其中包含“Wed,13 Jun 2018 12:52”。但是当我使用它时,QDateTime :: fromString返回无效对象,我不知道为什么。我使用“ddd,MM-MMM-yyyy HH:MM”格式。谁能告诉我我做错了什么?
我的代码:
QString tempDate; //Wed, 13 Jun 2018 12:52
QDateTime::fromString(tempDate, "ddd, MM-MMM-yyyy HH:MM"); //returns invalid obj
答案 0 :(得分:1)
您的QDateTime格式与您的输入字符串不对应。
Wed, 13 Jun 2018 12:52
应与ddd, dd MMM yyyy HH:mm
匹配。
此外,请确保您在进行转换时使用正确的区域设置,因为ddd
和MMM
已本地化。使用QLocale::setDefault或QLocale::toDateTime更改本地:
QLocale(QLocale::English).toDateTime(tempDate, "ddd, dd MMM yyyy HH:mm");
答案 1 :(得分:0)
QDateTime startTime = QDateTime :: fromString(QString(“ 1970-07-18T00:00:00”),Qt :: ISODate);