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 下午"