特定日期时NSDate是空值

在获取特定时期时得到空字符。

比如13/03/2013
代码:

NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
[formatter setDateFormat:@"MM/dd/yyyy HH:mm:ss a"];
NSDate *myDate = [formatter dateFromString:@"12/03/2013 5:47:00 AM"];
NSDate *myDate1 = [formatter dateFromString:@"13/03/2013 6:25:48 AM"];           

NSDateFormatter *df = [[NSDateFormatter alloc] init];
[df setLocale:[[NSLocale alloc] initWithLocaleIdentifier:@"en_US_POSIX"]];
[df setDateFormat:@"yyyy-MM-dd HH:mm"];
NSString *datestr = [df stringFromDate:myDate];
NSString *datestr1 = [df stringFromDate:myDate1];
NSLog(@"date object %@,%@",datestr,datestr1);

需要看一下标准日期格式:

  NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
    [formatter setDateFormat:@"dd/MM/yyyy hh:mm:ss a"];
    NSDate *myDate = [formatter dateFromString:@"12/03/2013 5:47:00 AM"];
    NSDate *myDate1 = [formatter dateFromString:@"13/03/2013 6:25:48 AM"];  

    [formatter setLocale:[[NSLocale alloc] initWithLocaleIdentifier:@"en_US_POSIX"]];
    [formatter setDateFormat:@"yyyy-MM-dd HH:mm"];
    NSString *datestr = [formatter stringFromDate:myDate];
    NSString *datestr1 = [formatter stringFromDate:myDate1];
    NSLog(@"date object %@,%@",datestr,datestr1);

第一步:解析
解析目前的格式

NSString *curStr=@"13/03/2013";
NSDateFormater *formater=[[NSDateFormater alloc] init];
[formater setDateFormat:@"dd/MM/yyyy"];
NSDate *getDate=[formater dateFromString:curStr];
NSLog(@"get date is: %@",getDate);

第二步:格式化
格式化成你想要的格式。如:2013-03-13

[formater setDateFormat:@"yyyy-MM-dd"];
NSString *getStr=[formater stringFromDate:getDate];
NSLog(@"finally result: %@",getStr);
NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
    [formatter setLocale:[[NSLocale alloc] initWithLocaleIdentifier:@"en_US_POSIX"]];
    [formatter setDateFormat:@"dd/MM/yyyy hh:mm:ss a"];
    NSDate *myDate = [formatter dateFromString:@"12/03/2013 5:47:00 AM"];
    NSDate *myDate1 = [formatter dateFromString:@"13/03/2013 6:25:48 AM"];  

    [formatter setDateFormat:@"yyyy-MM-dd HH:mm"];
    NSString *datestr = [formatter stringFromDate:myDate];
    NSString *datestr1 = [formatter stringFromDate:myDate1];
    NSLog(@"date object %@,%@",datestr,datestr1);