Objective-Cstring(yyyy-mm-dd)到NSDate
我的应用程序是一个JSON代码,涉及stringtypes的date。 (如“2011-10-01”)。 我想知道如何将它转换成NSDate? 它需要以不同的时间格式显示,如“2011年10月1日”。
恩。 这段代码不起作用:
NSString *date1 = @"2010-11-12"; NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init]; [dateFormat setDateFormat:@"yyyy-MMMM-dd"]; NSDate *date2 = [dateFormat dateFromString:date1]; NSString *strdate = [dateFormat stringFromDate:date2];
正如Tug在他的博客文章中写道:
Objective-C和iOS SDK提供了一个类来帮助格式化date(编组和解组),这个类是NSDateFormatter 。 毫不奇怪,NSDateFormatter使用Unicodedate格式模式。
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc]init]; [dateFormatter setDateFormat:@"yyyy-MM-dd"]; NSDate *date = [dateFormatter dateFromString:publicationDate ]; [dateFormatter release];
这里的publicationDate是一个NSString。
使用NSDateFormatter
。 适当的方法是dateFromString:
看看文档:)
你可以试试这个
NSDateFormatter *df = [[[NSDateFormatter alloc] init] autorelease]; [df setDateFormat:@"dd MM yyyy"]; NSString *TodayString = [df stringFromDate:[NSDate date]]; NSDate *SomeDate=[NSDate date]; NSString *TargetDateString = [df stringFromDate:SomeDate]; NSLog(@"date:%@",TargetDateString);