我必须通过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

最佳答案

您的QDateTime格式与您的输入字符串不对应。

Wed, 13 Jun 2018 12:52应与ddd, dd MMM yyyy HH:mm匹配。

请参见QDateTime::fromString

另外,请确保转换时使用正确的语言环境,因为dddMMM已本地化。使用QLocale::setDefaultQLocale::toDateTime更改本地:

QLocale(QLocale::English).toDateTime(tempDate, "ddd, dd MMM yyyy HH:mm");

关于c++ - 无法将QString转换为QDateTime,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/50898480/

10-09 06:33