dateFromString在ios中正常工作
我已经用此代码成功地将字符串中的日期进行了转换。dateFromString在ios中正常工作
NSDateFormatter *df=[[NSDateFormatter alloc]init];
[df setDateFormat:@"dd/MM/yyyy HH:mm:ss"];
[df setTimeZone:[NSTimeZone timeZoneWithAbbreviation:@"GMT"]];
NSString *strDate = [NSString stringWithFormat:@"%@", [unsortedArray objectAtIndex:i]];
NSDate *date =[df dateFromString:strDate];
这里,unsortedArray
是日期数组。
我可以使用NSDateFormatter
作为日期格式。
但在这里,我无法获得@"dd/MM/yyyy HH:mm:ss"
格式的日期。
我可以在这个格式得到日期:2013年3月8日9时07分16秒+0000
所以,我怎么能在以下格式获取日期:@"dd/MM/yyyy HH:mm:ss"
。
试试这个,
NSString *departTimeDate = @"2013-03-08 09:07:16 +0000";
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"yyyy'-'MM'-'dd HH':'mm':'ss ZZZZ"];
NSDate *date = [dateFormatter dateFromString:departTimeDate];
[dateFormatter setDateFormat:@"dd/MM/yyyy HH:mm:ss"];
[dateFormatter setTimeZone:[NSTimeZone timeZoneWithAbbreviation:@"GMT"]];
NSLog(@"Expected Result___ %@",[dateFormatter stringFromDate:date]);
的一段代码,你已经在你的文章写主要是为解析字符串,它转换成一个日期(NSDate *date =[df dateFromString:strDate];
)
所以,如果strDate
是“ 08/03/2013 10:28:30“,你会有一个代表这个好日子的NSDate。
NSDate未格式化,因为它不是他的责任。
如果你想有一个字符串格式化的日期像2013年8月3日十时28分30秒,这段代码将帮助您:
NSDateFormatter *df=[[NSDateFormatter alloc]init];
[df setDateFormat:@"dd/MM/yyyy HH:mm:ss"];
[df setTimeZone:[NSTimeZone timeZoneWithAbbreviation:@"GMT"]];
NSString stringFormattedDate = [df stringFromDate:[NSDate date]];
的stringFormattedDate
将在良好的日期格式;)
他在[unsortedArray objectAtIndex:i]数组中有日期所以这没有任何意义使用[NSDate日期] – 2013-03-08 09:35:49
'[unsortedArray objectAtIndex:i]'似乎包含NSString对象...可能是我错了,但没有在这一点上更多的解释,如果你用数组的对象替换'[NSDate date]',这是一个错误... – 2013-03-08 10:38:24
与往常一样,你使用'NSLog'记录日期,你得到'2013-03-08 09:07:16 + 0000',你认为它的格式不正确,不是吗? – Sulthan 2013-03-08 09:39:12