我有Date is 2012-09-25 09:33:10 +0000
,使用
[dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss"];
NSDate *d = [dateFormatter dateFromString:sDate];
// sDate = @“2012-September-21”
但我得到的是nil,而不是格式化日期。可能是什么问题?
答案 0 :(得分:1)
由于您的sDate = @“2012-September-21”,因此您的字符串 sDate 中没有时间(小时分和秒)。所以你应该像这样设置你的格式
[dateFormatter setDateFormat:@"yyyy-MM-dd"];
答案 1 :(得分:0)
您没有将时间包含在字符串中。您还需要修复语言环境:
[dateFormatter setDateFormat:@"yyyy-MM-dd"];
[dateFormatter setLocale:[NSLocale localeWithLocaleIdentifier:@"en_US"]];
[dateFormatter dateFromString:@"2012-September-21"];
答案 2 :(得分:0)
从你的问题来看,目前尚不清楚输入是什么,但我已经用下面给出的输入测试了它是否正常工作
NSString *dateString = @"2012-09-25 09:33:10";
NSDateFormatter *dateFormatter = [[[NSDateFormatter alloc] init] autorelease];
dateFormatter.dateFormat = @"yyyy-MM-dd HH:mm:ss";
NSDate *date = [dateFormatter dateFromString:dateString];