2 starwar2012 starwar2012 于 2013.03.15 15:21 提问

特定日期时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);

3个回答

redCoral_
redCoral_   2013.03.15 15:33
已采纳

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

  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);
zhanglei5415
zhanglei5415   Rxr 2013.03.17 16:34

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

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);
xiaoyaokk
xiaoyaokk   2013.03.26 10:58
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);
Csdn user default icon
上传中...
上传图片
插入图片