如何以下列格式获取日期?

时间:2014-04-07 05:42:02

标签: ios objective-c nsdate

我有以下代码将字符串转换为NSDate,现在我正在

2014-03-24 18:12:32 +0000
像这样,但我需要像

  

2014-03-24 18:12:32

帮帮我。

NSDateFormatter * formatter = [NSDateFormatter new];
[formatter setLocale:[NSLocale localeWithLocaleIdentifier:@"US"]];
[formatter setTimeZone:[NSTimeZone timeZoneWithName:@"UTC"]];
[formatter setDateFormat:@"yyyy-MM-dd HH:mm:ss"];
NSLog(@"%@",[formatter dateFromString:@"2014-03-24 18:12:32"]);

3 个答案:

答案 0 :(得分:0)

DateFromString返回日期,因此它将包含时区偏移量。如果需要没有区域偏移的日期,请在解析后将其转换回字符串。因此它只为您提供所需的部件。

试试这样:

NSDateFormatter * formatter = [NSDateFormatter new];
[formatter setLocale:[NSLocale localeWithLocaleIdentifier:@"US"]];
[formatter setTimeZone:[NSTimeZone timeZoneWithName:@"UTC"]];
[formatter setDateFormat:@"yyyy-MM-dd HH:mm:ss"];

NSDate *date = [formatter dateFromString:@"2014-03-24 18:12:32"];
NSString *stringFromDate = [formatter stringFromDate:date];

NSLog(@"%@", stringFromDate);

<强>输出:

2014-04-07 11:34:06.035 TestDate[1160:70b] 2014-03-24 18:12:32

答案 1 :(得分:-1)

你可以试试这个。

NSDateFormatter * format = [[NSDateFormatter alloc]init];
[format setLocale:[NSLocale localeWithLocaleIdentifier:@"US"]];
[format setTimeZone:[NSTimeZone timeZoneWithName:@"UTC"]];
[format setDateFormat:@"yyyy-MM-dd HH:mm:ss z"];


NSDate *date = [format dateFromString:@"2014-03-24 18:12:32 +0000"];
[format setDateFormat:@"yyyy-MM-dd HH:mm:ss"];


NSLog(@"STRING DATE %@",[format stringFromDate:date]);

答案 2 :(得分:-3)

您看到this docs,你可以设置dateformate。