В любом случае, проверьте ваши часовые пояса.

я есть строка, с которой я хочу разобрать время:

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 вечера.

Я просто хочу получить тот же час, что и я, а не беспокоиться о каких-либо часовых поясах или локалях. Что я здесь не так делаю? Благодарю.

Ответы на вопрос(4)

Ваш ответ на вопрос