0

我有一个日期格式为的字符串,HH:mm例如它可以12:00或,我通过将其设置为日期格式将其22:00输入到我的中。NSDateFormatter我只需要构建一个自定义日期。问题是当我完成此操作时,我得到解析2012-05-17 12:00:00 +0000的字符串,就好像日期是 5 月 17 日一样。

NSDate *today = [NSDate date];
NSDateFormatter *output = [[NSDateFormatter alloc] init];
[output setDateFormat:[NSString stringWithFormat:@"yyyy-MM-d %@:00 +0000",@"12:00"]];
NSString *finalTodayString = [output stringFromDate:today];
parsedDateString = [NSString stringWithString:finalTodayString];

问题是当我再次解析它以包含HH:mm我得到完全不同的东西时。例如,如果我有这个代码。

NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"yyyy-MM-d HH:mm ZZZ"];
NSDate *date = [dateFormatter dateFromString:fullDateString];

NSDateFormatter *dateFormmater2 = [[NSDateFormatter alloc] init];
[dateFormmater2 setDateFormat:@"HH:mm"];
NSString *string =[dateFormmater2 stringFromDate:date];

然后string 应该12:00,而是变成了14:00。请帮忙。

4

1 回答 1

1

从第一个代码中删除格林威治子午线时间“+0000”

于 2012-05-17T19:51:43.443 回答