2011-09-08 51 views

回答

16
NSDate *date = [NSDate date]; //I'm using this just to show the this is how you convert a date 

NSDateFormatter *df = [[NSDateFormatter alloc] init]; 
[df setDateStyle:NSDateFormatterLongStyle]; // day, Full month and year 
[df setTimeStyle:NSDateFormatterNoStyle]; // nothing 

NSString *dateString = [df stringFromDate:date]; [df release]; 
+0

這個方法不起作用..'[df setDateFormat:NSDateFormatterLongStyle];' - error and here - '[df setTimeFormate: NSDateFormatterNoStyle];' – LightNight

+0

@mazder - 道歉 - 我這次編輯過。再試一次。 – Abizern

+0

謝謝,現在它確定..但是當我試圖從字符串獲取日期時,它顯示'2011年1月26日'爲什麼? – LightNight

6
NSString *dateStr = @"2011-08-26 14:14:51"; 

//if you have date then, 
NSString *dateStr = [NSString stringWithFormat:@"%@",yourDate]; 



NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init]; 
[dateFormat setDateFormat:@"YYYY-MM-dd HH:mm:ss"]; 
NSDate *date = [dateFormat dateFromString:dateStr]; 
[dateFormat setDateFormat:@"MMMM dd, YYYY"]; 
NSString* temp = [dateFormat stringFromDate:date]; 

[dateFormat release]; 



NSLog(@"%@",temp); 
+0

您的日期格式字符串是錯誤的。它應該是@「YYYY-MM-dd HH:mm:ss」。 D是指一年中的天數d是指月份中的天數 – Abizern

+0

好於thanx! – mayuur

12
NSDateFormatter *df = [[[NSDateFormatter alloc] init] autorelease]; 
[df setDateFormat:@"dd LLLL yyyy"]; 
NSString *formattedDate = [df stringFromDate:[NSDate date]];