QT获取当前日期时间的中英文显示

本文最后更新于:2022年5月29日 上午

使用QT中的QDateTime获取当前的日期时间,语言格式是根据系统语言来决定的。

  • 在系统语言是English下:

    1
    2
    QDateTime::currentDateTime().toString(“ddd”);  // 这样获取到的是Mon-Sun,英文星期的3个字母的缩写
    QDateTime::currentDateTime().toString(“dddd”); // 这样获取到的是Monday-Sunday,英文星期
  • 在系统语言是简体中文下:

    1
    2
    QDateTime::currentDateTime().toString(“ddd”); // 这样获取到的是周一~周日
    QDateTime::currentDateTime().toString(“dddd”);// 这样获取到的是星期一~星期日

如果是编译环境和运行环境不一致,则需要注意系统环境的语言的差异。

  • 最好在代码里设置语言参数:

    1
    2
    3
    4
    5
    QLocale locale = QLocale::Chinese;		// 指定中文显示
    //QLocale locale = QLocale::English; // 指定英文显示
    //QLocale locale = QLocale::Japanese; // 指定日文显示

    QString(locale.toString(QDateTime::currentDateTime(),QString(“dddd”))); // 这样获得的星期为指定的语言格式下的。此处为星期一 - 星期日
  • 其他日期时间显示格式参照qt官方文档:https://doc.qt.io/qt-5/qdatetime.html

原文链接:使用QT获取当前星期的中英文显示