首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >处理日光时差

处理日光时差
EN

Stack Overflow用户
提问于 2013-10-28 21:23:45
回答 3查看 129关注 0票数 0

根据我们的应用程序规范,我们需要安排电话会议,而我的日程安排一直面临着日照时差的问题。

情况是这样的:今年11月3日,当我计划在11月4日下午5点打电话时,我们的日照时间发生了变化,那时我正在转换成格林尼治标准时间,并发送到服务器。如果我把格林尼治时间改为11月4日下午4点,而不是下午5点,尽管它只是正确的,但是根据用户的角度,他安排在下午5点而不是下午4点,那么该如何处理这个问题呢?

我要转换成GMT就像..。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
- (NSDateComponents*) convert_to_gmt_time : (NSDate*) date
{
    NSDate *localDate = date;
    NSTimeInterval timeZoneOffset = [[NSTimeZone defaultTimeZone] secondsFromGMT];
    NSTimeInterval gmtTimeInterval = [localDate timeIntervalSinceReferenceDate] - timeZoneOffset;
    NSDate *gmtDate = [NSDate dateWithTimeIntervalSinceReferenceDate:gmtTimeInterval];

    NSDateComponents *date_comp = [[NSCalendar currentCalendar] components: NSDayCalendarUnit | NSMonthCalendarUnit | NSYearCalendarUnit | NSHourCalendarUnit | NSMinuteCalendarUnit | NSSecondCalendarUnit fromDate:gmtDate];

    return date_comp;
}

编辑:

我就是这样把格林尼治时间转移到当地的..。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
  NSCalendar *gregorian = [[NSCalendar alloc] initWithCalendarIdentifier:NSGregorianCalendar];
    [gregorian setTimeZone:[NSTimeZone timeZoneWithAbbreviation:@"GMT"]];
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
    [dateFormatter setDateFormat:@"MMM dd, yyyy"];
NSDate *strt_date_loc = [gregorian dateFromComponents:start_date]; // start_date i'm filling after received from server as GMT.

    // Get date string.
    NSString *strt_date = [dateFormatter stringFromDate: strt_date_loc];

任何帮助都是非常感谢的。谢谢。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2013-11-03 23:02:25

有问题了,

问题是GMT转换,因为我确实考虑了当前的时间差到格林尼治标准时间,而不是在转换日期的时差。

我就是这么修好的..。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
NSCalendar *cal = [NSCalendar currentCalendar];
[cal setTimeZone:[NSTimeZone timeZoneForSecondsFromGMT:0]];
NSDateComponents *date_comp = [cal components: NSDayCalendarUnit | NSMonthCalendarUnit | NSYearCalendarUnit | NSHourCalendarUnit | NSMinuteCalendarUnit | NSSecondCalendarUnit fromDate:localDate];
票数 0
EN

Stack Overflow用户

发布于 2013-10-28 21:42:35

一次又一次和…::不能将日期转换为时区。您可以将日期表示转换为时区。这不会改变日期。不要试图比约会更棘手。

Unexpected value from NSDate

如果您有一个本地格式的日期表示(即我们),只需使用本地日期格式化程序从它构建一个日期。然后将此日期发送到$anywhere。

在返回的过程中,阅读这个日期(不是它的一个表示),并使用本地格式化程序构建一个本地表示。

绝不将日期的任何本地表示发送到任何地方。GMT是一种本地代表。(G代表什么?)

票数 1
EN

Stack Overflow用户

发布于 2013-10-28 21:43:58

NSDate是绝对时间,而不是基于时区。所以这基本上就像在格林尼治标准时间上描述的那样存储时间。

所以你只需要得到一个时区是格林尼治标准时间的日历,然后得到组件。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
 NSCalendar *calendar = [[NSCalendar alloc] initWithCalendarIdentifier:NSGregorianCalendar];
 [calendar setTimeZone:[NSTimeZone timeZoneWithAbbreviation:@"GMT"]];

 NSDateComponents *date_comp = [calendar components: NSDayCalendarUnit | NSMonthCalendarUnit | NSYearCalendarUnit | NSHourCalendarUnit | NSMinuteCalendarUnit | NSSecondCalendarUnit fromDate:gmtDate];
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19650290

复制
相关文章
【数字信号处理】相关函数应用 ( 时差估计 | TOA 时差估计使用场景 | TDOA 时差估计使用场景 )
时差估计 : 时差估计 主要用于 确定 某个发射信号 的位置 , 是 目标定位 跟踪 的 关键技术 , 其核心原理如下 :
韩曙亮
2023/03/30
1K0
celery时差问题解决方法
请记得点赞和分享这篇文章让更多的人看到它!另外,记得关注我的简书号马哥学Python,这样你就不会错过任何有价值的文章!
马哥Python
2019/06/28
5810
日光灯的正确打开方式
昨晚家里日光灯坏了,灯管两头微微亮,中间部分点不亮。老婆觉着是灯管坏了,但我凭借书本上日光灯知识的理解,觉得是镇流器坏了,达不到高电压。我们带着灯管去五金店,试了下果然灯管还有用。那怎么换镇流器和启动器呢?我一脸懵逼,支支吾吾,被老婆嘲笑了,一个物理PhD, 连日光灯也搞不定。后来还是请了五金店老板,换了根LED的灯管。
光学小豆芽
2020/08/13
8890
使用getTimezoneOffset方法修正时差
遇到件很奇怪的事情,应用内显示了当前服务器的时间,在一定时间内有双倍经验,可是在美国的玩家反映说她显示的是她客户端的时间(非北京时间),我本地的时间与它截图过来显示的时间相差16小时。
meteoric
2018/11/16
1.1K0
Enterprise Library5.0 配置Log时差问题
最近使用Enterprise Library5.0 配置Log日志时候出现的默认时间与本地系统时间不一致。默认时间为格里尼治时间,在一个log中出现两个时间会让人迷惑,这个事件到底是什么时候发生的呢?经过小弟我一上午多次尝试后,总算是解决了这个问题。
全栈程序员站长
2022/11/01
2690
Time Zone: GMT,UTC,DST,CST
       相较于两地时间表,显示世界各时区时间和地名的世界时区表(Universal World Time),就显得精密与复杂多,通常世界时区表的表盘上会标示着全球24个时区的城市名称。
阳光岛主
2019/02/19
4.2K0
Time Zone: GMT,UTC,DST,CST
gmt时间和cst时间_时区utc是什么意思
全球24个时区的划分 相较于两地时间表,可以显示世界各时区时间和地名的世界时区表(World Time),就显得精密与复杂多了,通常世界时区表的表盘上会标示着全球24个时区的城市名称,但究竟这24个时区是如何产生的?过去世界各地原本各自订定当地时间,但随着交通和电讯的发达,各地交流日益频繁,不同的地方时间,造成许多困扰,于是在西元1884年的国际会议上制定了全球性的标准时,明定以英国伦敦格林威治这个地方为零度经线的起点(亦称为本初子午线),并以地球由西向东每24小时自转一周360°,订定每隔经度15°,时差1小时。而每15°的经线则称为该时区的中央经线,将全球划分为24个时区,其中包含23个整时区及180°经线左右两侧的2个半时区。就全球的时间来看,东经的时间比西经要早,也就是如果格林威治时间是中午12时,则中央经线15°E的时区为下午1时,中央经线30°E时区的时间为下午2时;反之,中央经线15°W的时区时间为上午11时,中央经线30°W时区的时间为上午10时。以台湾为例,台湾位于东经121°,换算后与格林威治就有8小时的时差。如果两人同时从格林威治的0°各往东、西方前进,当他们在经线180°时,就会相差24小时,所以经线180°被定为国际换日线,由西向东通过此线时日期要减去一日,反之,若由东向西则要增加一日。
全栈程序员站长
2022/09/20
2.6K0
iOS NSDate计算之夏令时
公司有个邮件项目,其中Exchange日历需要大量的日期时间的计算。前两天客户反馈一个问题:循环日历修改单日后,生成的exception日期未生效,也就是说修改后的会议时间没有改动。正常来说这是个主流程功能,不太可能出现这样的问题,我们本地各种日志分析和造日历会议想要复现这个问题,徒劳无功。后来在查另一个完全不相干的问题时,查到了用户时区被改动导致日期错误问题,灵感乍现,连忙去试试之前用户反馈的日历周期在不同时区上的日历表现。果然,这次看到了不同。
Raindew
2022/03/24
1.2K0
【数字信号处理】相关函数应用 ( TDOA 时差估计实例 | 调制波特率 | 带宽 | 码元数量 | 信息量 )
如果传递的是 " 单载波 " 信号 , 则信号有 " 频率 " , " 幅度 " , " 相位 "
韩曙亮
2023/03/30
8540
【数字信号处理】相关函数应用 ( TDOA 时差估计实例 | 调制波特率 | 带宽 | 码元数量 | 信息量 )
美国限制共享漏洞:如何预防零时差攻击?
“2022年6月2日,美国商务部工业与安全局(BIS)正式发布了针对网络安全领域的最新出口管制规定。该规定要求美国实体与中国政府相关组织和个人合作时,如果发现安全漏洞和信息,不能直接公布,需要先经过美国商务部审核。” 美方这一举措将会给我国网络安全带来哪些影响呢? 首先,我们需要认识网络安全界名词——“零日漏洞”。 何谓零日漏洞?又叫零时差攻击。举一个生物安全领域的例子,在“新冠病毒”爆发后,为了尽快的应对和控制该病毒的爆发,疫情爆发国家需将“新冠病毒”基因序列在第一时间公布,以提升病毒疫苗研发的进度和疫
云头条
2022/06/29
4360
美国限制共享漏洞:如何预防零时差攻击?
几个问题的思考:时差问题、地图算法和 Windows 更新
有时候忽然上下班路上,会去思考一些司空见惯的问题,有一些问题随着思考深入,发现还挺有意思的,就记录在这里。问题之间关联关系不大,有点散。
四火
2022/07/19
6880
几个问题的思考:时差问题、地图算法和 Windows 更新
Linux服务器时差问题解决方法
cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
马哥Python
2019/06/28
5450
使用 pytz 处理 Python 中的时区问题
pytz将 Olson tz 数据库带入Python。该库允许使用Python 2.4或更高版本进行准确的跨平台时区计算。它还解决了夏令时结束时模糊时间的问题。几乎所有的 Olson 时区都得到了支持。
一墨编程学习
2019/05/10
2.8K0
解决vue+element 时间控件时间差,区域时差8小时
https://blog.csdn.net/molihuakai_118/article/details/94359373
全栈程序员站长
2022/08/25
1.6K0
解决vue+element 时间控件时间差,区域时差8小时
一段代码,两倍时差,直击并发编程伪共享
【闲话开篇】:这段时间项目接近尾声,我终于闲了一点,又拿起了早先未看完的书《JAVA高并发程序设计》,强迫自己学习。看到其中介绍《无锁的缓存框架:Disruptor》时,接触到了一个概念——伪共享(false sharing),说是会影响并发程序的执行性能,被很多人描述成无声的性能杀手,突然感觉到了自己知识的匮乏,罪过啊。
大道七哥
2021/02/02
6130
实际测试内存在顺序IO和随机IO时的访问延时差异
我们理解了内存IO的内部实现过程,知道了内存的随机IO比顺序IO要慢,并对延迟时间进行了大概的估算。那么我们今天来用代码的方式来实践一下,看看在我们的项目工程中,内存访问的在不同的访问场景下延时究竟是个什么表现。
开发内功修炼
2022/03/24
1.3K0
实际测试内存在顺序IO和随机IO时的访问延时差异
【数字信号处理】相关函数应用 ( 相关函数应用场景 | 噪声中信号检测 | 隐含周期性检测 | 时差估计 | 描述随机信号 )
文章目录 一、相关函数应用场景 一、相关函数应用场景 ---- 相关函数应用场景 : " 噪声 " 中 信号检测 : 发射信号 通过 信道 后 , 假如该信道 是 无线信道 , 如手机的 4G / 5G 基站的信道 , 其中接收到的信号中 , 一定存在 噪声 , 这就需要将 噪声中的 信号 准确的 识别出来 ; 信号 " 隐含周期性 " 检测 信号 " 时差估计 " 描述 " 随机信号 " : 随机信号 的 " 自相关函数 " 与 " 功率谱密度 " 是一对 " 傅里叶变换对 " ;
韩曙亮
2023/03/30
3710
解决Spring Boot项目放到服务器上运行出现时差问题
方法一:在启动类加上 @PostConstruct void setDefaultTimezone() { TimeZone.setDefault(TimeZone.getTimeZone("Asia/Shanghai")); } 方法二:在application.properties加上(Jackson) ## 使用Jackson处理JSON spring.jackson.date-format=yyyy-MM-dd HH:mm:ss spring.jackson.ti
水煮麥楽雞
2022/11/20
1.3K0
点击加载更多

相似问题

如何处理时差

29

用Java和角处理时差

21

如何处理时差负值?

10

日光存问题?

18

益智-日光节约?

23
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文