qt读oracle时间戳,QT解析时间戳与微秒级精度

对于UTC我不附加库知道你如何能做到,但对于日期和时间,你有你的分割字符串来获得日期和时间后,你可以做这样的事情:

QString time("21:51:16.779");

QString date("2014-08-26");

QDate date = QDate::fromString(date, "yyyy-MM-dd");

QTime time = QTime::fromString(time, "h:m:s.zzz");

你的确可以格式化fromString的日期和时间,所以你不会得到只有毫秒。

但是,如果您真的想获得微秒级,则应该创建一个继承QTime的类,然后重载void QTime::fromString(QString, QString);方法。然后在这个方法中,你会做这样的事情。

void MyTime::fromString(QString& str, QString format) {

QRegExp rx("([0-9]{4})-([0-9]{2})-([0-9]{2})T([0-9]{2}):([0-9]{2}):([0-9]{2})\.([0-9]{6})");

rx.indexIn(str);

_year = rx.cap(1);

_month = rx.cap(5);

_day = rx.cap(7);

_hour = rx.cap(9);

_min = rx.cap(11);

_sec = rx.cap(13);

_msec = rx.cap(15);

}

因此,你应该在毫秒中获得毫秒和微秒。你应该改变正则表达式,因为它不是一个完美的,但它应该工作。有关UTC,请参阅QTimeZone。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值