QT中文星期
QDateTime 默认根据系统语言进行对应语言的相关转换。
在设置区域为中文的操作系统中直接调用以下函数:
QDateTime dateTime = QDateTime::currentDateTime();
QString strFormat = "dd.MM.yyyy, ddd MMMM d yy, hh:mm:ss.zzz, h:m:s ap";
QString strDateTime = dateTime.toString(strFormat);
qDebug() << strDateTime << endl;
结果如下:
"15.10.2017, 周日 十月 15 17, 12:59:21.735, 12:59:21 下午"
Qt中借助QLocale类,主要用来在不同语言下,实现各种数字、表达式等字符串之间的转换。
指定特定语言显示代码:
QDateTime dateTime = QDateTime::currentDateTime();
QLocale locale = QLocale::English;//指定英文显示
//QLocale locale = QLocale::Chinese;//指定中文显示
//QLocale locale = QLocale::Japanese;//指定日文显示
QString strFormat = "dd.MM.yyyy, ddd MMMM d yy, hh:mm:ss.zzz, h:m:s ap";
QString strDateTime = locale.toString(dateTime, strFormat);
qDebug() << strDateTime << endl;
相应的显示结果如下:
"15.10.2017, Sun October 15 17, 12:48:08.372, 12:48:8 pm"
"15.10.2017, 周日 十月 15 17, 12:48:44.475, 12:48:44 下午"
"15.10.2017, 日 10月 15 17, 12:51:06.689, 12:51:6 午後"