首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >基于区域性将QString日期(RFC 822格式)转换为另一种QString格式

基于区域性将QString日期(RFC 822格式)转换为另一种QString格式
EN

Stack Overflow用户
提问于 2017-11-13 14:23:31
回答 1查看 299关注 0票数 1

我有一个包含多个字符串的数据库,我从查询中获取这些记录,并以QString接收以下格式数据:

2017年11月13日上午09:48:45 +0000

所以,我需要基于文化来转换,例如,如果我想在意大利文化中转换?

其结果将是:

“伦,2017年11月13日09:48:45”

在qt中存在这种类型的转换,还是我必须手动进行?

感谢所有

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-11-13 14:35:33

Qt提供了处理语言/国家细节的QLocale类。它有过载的接受QLocale::toString()QDateTime

它还具有一个函数QLocale::toDateTime()来执行反向操作。但是在您的情况下,非本地感知的QDateTime::fromString()应该可以工作。

在结尾处,您应该有这样的内容(+或-一些参数,用于您想要的确切格式)。

代码语言:javascript
复制
QString source = "Mon, 13 Nov 2017 09:48:45 +0000";
QDateTime dt  = QDateTime::fromString(source, Qt::RFC2822Date);
QString result = QLocale().toString(dt, Qt::RFC2822Date);

注意,QLocale()基于底层操作系统中的当前用户设置构造一个实例。您还可以强制使用特定的语言/国家,例如:QLocale(QLocale::Italian)

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47266545

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档