#iphone #ios #date #date-format
#iPhone #iOS #Дата #дата-формат
Вопрос:
У меня есть следующая строка даты,
2011-08-30T11:44:54.345-04:00
Помогите мне составить правильный формат для его анализа dateFromString:
Ответ №1:
Вам необходимо исключить последнее двоеточие (часовой пояс, «-04:00» -> «-0400»), поскольку Z
потребуется что-то вроде «-0800», тогда вы можете попробовать это сделать:
NSString *dateString = @"2011-08-30T11:44:54.345-04:00";
NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];
[dateFormat setDateFormat:@"yyyy-MM-ddEHH:mm:ss.SSSZ"];
NSDate *date = [dateFormat dateFromString:dateString];
[dateFormat release];
Для получения дополнительной информации о форматировании даты обратитесь к этой странице.
Ответ №2:
Это следует за ответом Тило, но с добавлением нескольких вещей.
NSString *dateString = @"2011-08-30T11:44:54.345-04:00";
NSRange range = [dateString rangeOfString:@":" options:NSBackwardsSearch];
dateString = [dateString stringByReplacingOccurrencesOfString:@":" withString:@"" options:0 range:range];
NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];
[dateFormat setDateFormat:@"yyyy-MM-ddEHH:mm:ss.SSSZ"];
NSDate *date = [dateFormat dateFromString:dateString];
[dateFormat release];
Вы получите требуемый формат.