2012-03-06 115 views
0

我试图将此字符串“2012-02-05T00:00:00 + 00:00”转换为更具吸引力,格式良好的格式串像“周二3月5日,2012年日期格式化程序 - 字符串日期2012-02-05T00:00:00 + 00:00

我有我从工作的例子:

NSString *dateStr = @"20081122"; 

// Convert string to date object 
NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init]; 
[dateFormat setDateFormat:@"yyyyMMdd"]; 
NSDate *date = [dateFormat dateFromString:dateStr]; 

// Convert date object to desired output format 
[dateFormat setDateFormat:@"EEEE MMMM d, YYYY"]; 
dateStr = [dateFormat stringFromDate:date]; 
NSLog(@"date: %@", dateStr); 
[dateFormat release]; 

我将如何适应的日期格式” 2012-02-05T00:00:00+ 00:00“使用类似的代码以上?

谢谢。

回答

1

,当我看到你的时间 “2012-02-05T00:00:00 + 00:00”,我觉得你要打印 “的NSDate” 到您的控制台。在此期间,“2012-02-05”是日期,“T00:00:00 + 00:00”是时间。所以,当你需要使用日期这样,

NSString *dateStr = @"2012-02-05"; 

你有这样

[dateFormat setDateFormat:@"yyyy-MM-dd"]; 

格式化如果您想把日期组件转换成你喜欢尝试这个

NSString *dateStr = @"2012-02-05"; 

// Convert string to date object 
NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init]; 
[dateFormat setDateFormat:@"yyyy-MM-dd"]; 
NSDate *date = [dateFormat dateFromString:dateStr]; 

// Convert date object to desired output format 
[dateFormat setDateFormat:@"EEEE MMMM d, YYYY"]; 
dateStr = [dateFormat stringFromDate:date]; 
NSLog(@"%@",dateStr); 

你甚至可以这样做,将当前日期转换为你喜欢的。

// Convert date object to desired output format 
[dateFormat setDateFormat:@"EEEE MMMM d, YYYY"]; 
dateStr = [dateFormat stringFromDate:[NSDate date]]; //for current date 
NSLog(@"%@",dateStr); 
3

您可以通过做 -

[dateFormat setDateFormat:@"yyyy-MM-ddThh:mm:ss z"]; 
+2

此代码应该工作。但是我会用'HH'而不是'hh'几个小时。 'HH'代表24小时格式,而'hh'代表12小时 – Novarg 2012-03-06 12:55:12

+0

谢谢。我试过,但做NSLog(@“日期:%@”,日期);正在返回(null) – 2012-03-06 13:38:36

+0

你在哪里使用上面的格式,你应该使用@“yyyy-MM-ddThh:mm:ss z”而不是@“EEEE MMMM d,YYYY” – saadnib 2012-03-06 13:46:44

相关问题