3

我是目标 C 的新手。我想设置一个日期格式化程序,用于将日期“2014-04-01T13:30:00.000+0000”转换为另一种格式 - “2014/04/01 13:30:00 AM”。

我已经尝试了许多格式,但它不起作用。请帮助解决这个问题。

4

3 回答 3

1

尝试这个

NSString *dateFormat1 = @"yyyy-MM-dd'T'HH:mm:ss.sssZ";
NSString *dateFormat2 = @"yyyy/MM/dd HH:mm:ss a";

NSString *dateString = @"2014-04-01T13:30:00.000+0000";

NSDateFormatter *dateFormatter = [[NSDateFormatter alloc]init];
NSLocale *enUSPOSIXLocale = [[NSLocale alloc] initWithLocaleIdentifier:@"en_US_POSIX"];
[dateFormatter setLocale:enUSPOSIXLocale];
[dateFormatter setDateFormat:dateFormat1];

NSDate *date = [dateFormatter dateFromString:dateString];
[dateFormatter setDateFormat:dateFormat2];
dateString = [dateFormatter stringFromDate:date];

NSLog(@"Date : %@",dateString);
于 2013-04-15T11:24:21.980 回答
1

使用以下格式,将工作... :)

NSDateFormatter *df = [[NSDateFormatter alloc] init];
[df setDateFormat:@"yyyy-MM-dd'T'HH:mm:ss.sssZ"];
NSDate *date = [df dateFromString:str];
NSLog(@"%@",date);

有关更多参考,请参阅此。

于 2013-04-15T11:31:53.373 回答
0

这段代码对我很有效,并且认为对你也有效..

NSDate *today = [NSDate date];
 NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];
 [dateFormat setDateFormat:@"yyyy/MM/dd hh:mm:ss a"];
 NSString *dateString = [dateFormat stringFromDate:today];
 NSLog(@"date: %@", dateString);
 [dateFormat release];

如果它不适合你..随时问..只是评论..

于 2013-04-15T11:29:41.523 回答