Parsing the MSVC++ predefined __DATE__
(maybe in conjunction with __TIME__
) macro with QDateTime::fromstring() returns nothing (= an invalid QDateTime object). Why?
问问题
2531 次
2 回答
4
来自http://msdn.microsoft.com/en-us/library/b0084kay%28v=vs.80%29.aspx:
DATE 当前源文件的编译日期。日期是 Mmm dd yyyy 形式的字符串文字。月份名称 Mmm 与 TIME.H 中声明的库函数 asctime 生成的日期相同。
该dd
部分似乎填充了第 1..9 天的前导空格。
d the day as number without a leading zero (1 to 31)
dd the day as number with a leading zero (01 to 31)
一种解决方案可能是__DATE__
在解析之前从字符串中删除重复的空格,例如使用QString::replace(" ", " ")
单个d
.
于 2013-07-04T14:24:18.470 回答
3
QLocale("en_US").toDate(QString(__DATE__).simplified(), "MMM d yyyy");
于 2014-09-23T15:13:51.553 回答