QLocale 本地化(时间日期以及其它……)

59 篇文章 3 订阅

QLocale 本地化时间日期

QLocale 本地化

    QLocale currentlocale = QLocale::system();
    qDebug()<<"default "<<currentlocale;

    //zh_CN
    //QLocale::setDefault(QLocale("zh_CN"));
    QLocale::setDefault(QLocale(QLocale::Chinese,QLocale::China));
    qDebug()<<"zh_CN "<<QLocale();
    qDebug() << QLocale().toString(QDate::currentDate());

    //en_US
    //QLocale::setDefault(QLocale("en_US"));
    QLocale::setDefault(QLocale(QLocale::C,QLocale::UnitedStates));
    qDebug() <<"en_US"<<QLocale();
    qDebug() << QLocale().toString(QDate::currentDate());

输出

default  QLocale(Chinese, Simplified Han, China)
zh_CN  QLocale(Chinese, Simplified Han, China)
"2019年6月13日星期四"
en_US QLocale(C, Default, Default)
"Thursday, 13 June 2019"

以不同的 locale 转化时间日期

     qDebug()<<"---------- locale string / dateTime ----------";
    //----------英文格式
    //en_US locale
    QLocale en_US_locale("en_US");

    //locale string to dateTime
    QDateTime en_US_dt =  en_US_locale.toDateTime("2019-06-14 03:22:08 pm","yyyy-MM-dd hh:mm:ss ap");

    //dateTime to locale string
    qDebug()<<"en_US_locale "<<en_US_locale.toString(en_US_dt,"yyyy-MM-dd hh:mm:ss ap");

	//----------中文格式
    //zh_CN locale
    QLocale zh_CN_locale("zh_CN");

    //locale string to dateTime
    QDateTime zh_CN_dt =  zh_CN_locale.toDateTime("2019-06-14 03:22:08 下午","yyyy-MM-dd hh:mm:ss ap");

    //dateTime to locale string
    qDebug()<<"zh_CN_locale "<<zh_CN_locale.toString(zh_CN_dt,"yyyy-MM-dd hh:mm:ss ap");

输出 :

---------- locale string / dateTime ----------
en_US_locale  "2019-06-14 03:22:08 pm"
zh_CN_locale  "2019-06-14 03:22:08 下午"

可以参考文章:

QT源码解析(九)解析QDateTime

  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值