我的 iPhone 应用从网站下载汇率。它还会下载 EST 中上次更新费率的时间。在我的应用中,我想将该时间与 [NSDate date] 进行比较。
基本上,我想使用 NSTimeInterval 将下载时间与当前 EST 进行比较以计算差异。
我查看了此站点并阅读了文档,但不确定如何实现这一点。据我了解, NSDate 没有时区。它是GMT 。所以我想将其转换为 EST 或将我的日期转换为 GMT 并比较两者。
这就是我将下载的数据转换为日期的方式:
NSDateComponents *dateComps = [[NSDateComponents alloc] init];
[dateComps setHour:hour];
[dateComps setMinute:minute];
[dateComps setDay:day];
[dateComps setMonth:month];
[dateComps setYear:year];
NSCalendar *calendar = [[NSCalendar alloc] initWithCalendarIdentifier:NSGregorianCalendar];
self.lastUpdatedExchangeRateDate = [calendar dateFromComponents:dateComps];
感谢您就解决此问题的最佳方式提出的意见。
Best Answer-推荐答案 strong>
你也应该设置 NSDateComponents ' timeZone :
dateComps.timeZone = [NSTimeZone timeZoneWithAbbreviation"EST"];
使用正确的时区创建 NSDate 很重要,因为它代表时间的一秒,并且不知道时区。
关于iphone - 比较 NSDate 与从 Internet 下载的日期,我们在Stack Overflow上找到一个类似的问题:
https://stackoverflow.com/questions/17539839/
|