【发布时间】:2011-03-29 00:00:44
【问题描述】:
我有一个字符串,我想从中解析时间:
NSString *longdate = @"Mar 27, 2011 8:38:38 PM";
我想解析这个日期并只输出带有小时+分钟+上午/下午的时间部分:
// First, convert our string into an NSDate
NSDateFormatter *inFormat = [[NSDateFormatter alloc] init];
[inFormat setDateFormat:@"MMM dd, yyyy HH:mm:ss aaa"];
NSDate *date = [inFormat dateFromString:longdate];
[inFormat release];
// Now convert from date back to a string
NSDateFormatter *outFormat = [[NSDateFormatter alloc] init];
[outFormat setDateFormat:@"HH:mm aaa"];
NSString *final = [outFormat stringFromDate:date];
[outFormat release];
NSLog(@"original: %@ | final %@", longdate, final);
问题是最后的时间是错误的。我预计时间是晚上 8:38,但实际上是下午 12:38。
我只想按照我说的那样度过一个小时,而不是打扰任何时区或地区。我在这里做错了什么?谢谢。
【问题讨论】:
标签: iphone objective-c parsing date nsdateformatter