【发布时间】:2016-10-07 09:02:41
【问题描述】:
我正在尝试以 MMMM dd, EEEE 格式获取当前日期。这就是我所做的
NSDate *utc = [[NSDate alloc] init];
NSDateFormatter *fmt = [[NSDateFormatter alloc] init];
NSTimeInterval timeZoneSeconds = [[NSTimeZone localTimeZone] secondsFromGMT];
NSDate *DateInLocalTimezone = [utc dateByAddingTimeInterval:timeZoneSeconds];
fmt.dateFormat = @"MMMM dd, EEEE";
NSString *currentDate = [fmt stringFromDate:DateInLocalTimezone];
鉴于,
- UTC = 2016-10-07 08:55:55 +0000
- 时区 = gmt+8
- DateInLocalTimezone = 2016-10-07 16:55:55 +0000
- currentDate = 10 月 8 日,星期六
currentDate 必须是 10 月 7 日,星期五。为什么在我格式化日期时会添加另一天?
【问题讨论】:
-
你加了两次 +8 小时我想...删除
DateInLocalTimezone的内容,然后将您当前的本地/时区设置为NSDateFormatter
标签: ios objective-c nsdate nsdateformatter