开发者

Converting QString containing PostgreSQL timestamp to QDateTime

I'm having trouble with a seemingly very simple problem: I want to get a QDateTime from a QString con开发者_高级运维taining a timestamp. I got the timestamp from PostgreSQL, but it doesn't matter. Here is the code that does not work:

QString timestamp = "2010-10-09 19:21:46+02:00";
QString format = "YYYY-MM-DD HH:MM:SSTZD";
QDateTime dt = QDateTime::fromString(timestamp, format);
qDebug() << dt.toString(); // outputs empty string

There must be something very obvious I'm missing. Thanks!


There were two mistakes I was making. There is no TZD in the format specifications, so I removed the time zone information since I do not need it in my app by doing:

timeStamp.chop(6);

And then used the following format to get a QDateTime. Note the lowercase format characters:

QDateTime createdAt = QDateTime::fromString(timeStamp, "yyyy-MM-dd HH:mm:ss");

Thanks to everyone above for helping out.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜