Iphone 使用NSDateFormatter管理日期

Iphone 使用NSDateFormatter管理日期,iphone,objective-c,nsdate,nsdateformatter,Iphone,Objective C,Nsdate,Nsdateformatter,我尝试使用NSDateFormatter获取和管理日期,但如何使其工作。 我认为我的第一个“dateFormatter”的格式不正确是个问题,因为当我使用第二个带有函数“stringFromDate”和参数“[NSDate date]”的格式化程序时,它工作得很好,但当我使用NSDate“dateFromString”时就不行了 感谢您的帮助:)假设到目前为止是一个字符串,而不是NSDate,请尝试以下操作: //"dateString" have this format: "2011-05-2

我尝试使用NSDateFormatter获取和管理日期,但如何使其工作。 我认为我的第一个“dateFormatter”的格式不正确是个问题,因为当我使用第二个带有函数“stringFromDate”和参数“[NSDate date]”的格式化程序时,它工作得很好,但当我使用NSDate“dateFromString”时就不行了


感谢您的帮助:)

假设
到目前为止
是一个字符串,而不是NSDate,请尝试以下操作:

//"dateString" have this format: "2011-05-26T16:18:26Z"
NSString *dateString = [[tracks objectAtIndex:0] objectForKey:@"to-date"];
NSDate *dateFromString = [[NSDate dateFromString:dateString];

如果要向用户显示以特定格式格式化的日期,则可以使用设置
NSDateFormatter
并使用
stringFromDate:
获取显示用户的字符串。如果仍然无法正确显示,请设置日历(我忘了您是否总是需要设置日历,或者是否有默认设置)。

当然,日期格式与您从服务器收到的日期格式不同

试试这个:

dateFormatter = [[NSDateFormatter alloc] init]; 
[dateFormatter setDateFormat:@"yyyy-MM-dd'T'HH:mm:ss Z"];
NSDate *date = [dateFormatter dateFromString:[dateString stringByReplacingOccurrencesOfString:@"Z" withString:@" +0000"]];

很抱歉显示错误。在将“dateString”发送到dateFormatter之前,“dateString”中有什么内容?
dateFormatter = [[NSDateFormatter alloc] init]; 
[dateFormatter setDateFormat:@"yyyy-MM-dd'T'HH:mm:ss Z"];
NSDate *date = [dateFormatter dateFromString:[dateString stringByReplacingOccurrencesOfString:@"Z" withString:@" +0000"]];