我有一个字符串Apr. 20, 2013 Saturday @ 7:00 PM
,我正在使用下面的代码:
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"MMM. d, yyyy EEEE @ h:mm a"];
NSDate *dateFromString = nil;
dateFromString = [dateFormatter dateFromString:dateString];
[dateFormatter release];
我的结果为2000-01-01 13:30:00 +0000
。它在iOS 6中给了我错误。
答案 0 :(得分:1)
你必须这样做:
NSDate *today = [[NSDate alloc] init];
NSDateFormatter *aux = [[NSDateFormatter alloc] init];
[aux setDateFormat: @"MMM. d, yyyy EEEE @ h:mm a"];
NSLocale *locale = [[NSLocale alloc] initWithLocaleIdentifier:@"es_ES"]; // Your locale, recommended 'en_US', 'en_GB', etc...
[aux setLocale:locale];
NSString *date = [aux stringFromDate: today];
BTW:您必须初始化NSDate
变量,如果将其分配给nil
值,那么它可能无法正常工作。
<强> EDIT1:强> 可能你想使用这种日期格式:
[dateFormat setDateFormat: @"EE, dd MMM yyyy '-' HH:mm"];