【发布时间】:2013-01-11 02:17:58
【问题描述】:
可能重复:
Getting date from [NSDate date] off by a few hours
NSDate date don’t give me the right hour
我有这段代码:
NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
[formatter setDateFormat:@"HH:mm"];
NSString *formattedDateInString = [formatter stringFromDate:[self.datePicker date]];
NSLog(@"This is the formatted date (STRING) ---> %@" ,formattedDateInString);
self.fromHourLabel.text = formattedDateInString;
NSDate *date = [formatter dateFromString:formattedDateInString];
NSLog(@"This is the date (NSDate) ---> %@" ,date);
self.fromHour = date;
我基本上从 UIDatePicker 获取日期,将 Hours 和 Minutes 设置为标签文本,并将日期保存到名为 fromHour 的属性中。在-viewDidLoad 方法中我也有:
self.datePicker.timeZone = [NSTimeZone localTimeZone];
这是输出:
如您所见,使用这段代码,我有两个主要问题:
- 第一个输出是 17.30,第二个是 16:30(第一个输出正确,第二个错误)为什么?
- 第二个输出格式为“yyyy-MM-dd HH:mm:ss”,但我只需要“HH:mm”。
你能帮帮我吗?
【问题讨论】:
-
您是想将整个日期保存在 fromHour 中,还是只保存时间?你说你正在保存一个日期,但你这样做的方式只会给你时间(而且时间不正确)。
-
这一定是 Cooca 被问到的第二多问题。提问前请先搜索。
标签: ios objective-c timezone nsdateformatter uidatepicker