转换这样的东西的最佳方式是什么(写得很容易为人类阅读):
Jun 14, 2013
或其他Sep 23, 2009
从NSString到NSDate?
如果NSString以更标准的格式编写,我只能找到转换的方法。
答案 0 :(得分:2)
您可以将NSString
日期转换为NSDate
,如下所示:
NSString *str1 =@"Jun 14, 2013";
NSString *str2;
NSDateFormatter *df = [[NSDateFormatter alloc] init];
[df setDateFormat:@"MMM dd, yyyy"];
NSDate *myDate = [df dateFromString: str1];
str2=[df stringFromDate:myDate];
NSDate *myDate2 = [df dateFromString: str2];
// OUTPUT as your string
NSLog(@"same as your string %@",str2);
// Here you can change date format that you want from actual formatted string.
[df setDateFormat:@"yyyy MMM, dd"];
//Out Put with change Format like 2013 Jun, 14
NSLog(@"diffrent formate %@",[df stringFromDate:myDate2]);
不要NSLog
NSDate
对象显示错误,这就是为什么我将NSlog
与str2放在一起
NSDate对格式化(只是日期信息)一无所知,NSDateFormatter对日期一无所知,只知道如何格式化日期。所以你必须使用像-stringFromDate这样的方法:知道当前或不是实际格式化日期以供人类可读的显示。