0
A
回答
0
是的,没有。你是正确的,Qt::OffsetFromUTC
为您提供当前使用价值。
但是,这将改变给定的夏令时间的规则,你所在的时区这是一个长期拖欠(尚未实施)要求全时区支持添加到QDateTime
:
http://bugreports.qt-project.org/browse/QTBUG-71
即现在,如果您在法国使用设备并要求UTC抵消,则会获得一个小时,但在三月份切换到DST时将会变为两个小时。请记住这一点。
0
下面是一个函数,它返回任何时区的UTC/GMT偏移量。对于负的UTC偏移量,您必须重写此函数并检查布尔值“isNegative”。我用它来发送请求到服务器,如果我想检查它不是时钟向前或向后移动的那一天,我只需要调用两次函数,一次使用今天的日期,然后使用明天的日期。如果他们都返回相同的,那么我们知道时钟在夏令时的24小时内不会切换。
QTime Calendar::getTimeZoneDiff(QDateTime midnightDateTime, bool &isNegative) {
midnightDateTime.setTime(QTime(0,0));
QDateTime utc = midnightDateTime.toUTC();
QDateTime local = midnightDateTime;
local.setTimeSpec(Qt::LocalTime);
QDateTime offset = local.toUTC();
QTime properTimeOffset = QTime(offset.time().hour(), offset.time().minute());
offset.setTimeSpec(Qt::LocalTime);
utc.setTimeSpec(Qt::UTC);
if(offset.secsTo(utc) < 0){
isNegative = true;
}else{
isNegative = false;
properTimeOffset.setHMS(24 - properTimeOffset.hour() - (properTimeOffset.minute()/60.0) - (properTimeOffset.second()/3600.0), properTimeOffset.minute() - (properTimeOffset.second()/60.0), properTimeOffset.second());
if(!properTimeOffset.isValid()){ //Midnight case
properTimeOffset.setHMS(0,0,0);
}
}
return properTimeOffset;
}
我的解决方案还张贴在这里:Timezone offset
相关问题
- 1. 如何获得__TIME__的UTC偏移量?
- 2. 如何在logstash中获得偏移量?
- 3. 在JS中获取客户端时区(不是GMT偏移量)
- 4. 如何获得时区(从GMT偏移)并在android中转换为double
- 5. 如何获得kafka的最新偏移
- 6. 如何设置到PHAsset.fetchAssets的偏移量?
- 7. 如何获得当前的ScrollView的Y偏移量
- 8. 如何获得时区偏移值
- 9. 如何获得时区偏移为±hh:mm?
- 10. 如何获得RadDataBoundListBox中的滚动偏移量?
- 11. 如何获得相对于特定父级的偏移量?
- 12. 如何在Rails 2.3中获得正确的时区偏移量?
- 13. 如何获得Javascript中整个div的范围偏移量?
- 14. 如何获得一个元素的正确偏移量? - jQuery
- 15. 如何获得MySQL中特定行的偏移量?
- 16. Java 8 ZoneOffset - 如何获得当前系统的UTC偏移量
- 17. 如何为RichMarker设置偏移量?
- 18. 如何获得iOS设备
- 19. 如何获取壁纸偏移量?
- 20. 如何获得autocrops偏移量和大小?
- 21. 如何在Rails中获得utc偏移量?
- 22. 将GMT时间戳与GMT偏移量转换为本地PHP时间戳
- 23. TimeZone Id来自GMT的偏移量在Java中
- 24. 在ruby中解析任意gmt偏移量的时间
- 25. 来自GMT偏移量的PHP date_default_timezone_set()是posibble?
- 26. php DateTimeZone-> getOffset()返回GMT时区的无效偏移量
- 27. 获取特定时区的当前GMT偏移
- 28. 歌剧返回偏移自动如何获得实际的偏移号码?
- 29. 如何计算在GMT时区给定的GMT/UTC偏移量在本地时间?
- 30. Webservice将timzezone名称转换为GMT偏移量
我认为,新的链接现在是https://bugreports.qt-project.org/browse/QTBUG-29666 – Vadi 2013-09-10 07:30:28