日期时间显示问题

时间:2013-01-05 15:21:34

标签: xcode cocoa-bindings

我有以下代码:

NSString *dateString = @"01-02-2010 12:00:00 AM";
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"dd-MM-yyyy h:m:s a"];
NSDate *dateFromString = [[NSDate alloc] init];
dateFromString = [dateFormatter dateFromString:dateString];
[dateFormatter release];

当我在DateTimePopup中设置上述日期时,它显示“02/01/2010”。

但是,当我使用相同的方法向GridView添加数据时,它会显示出来 带时间和区域的完整日期。

我只需显示日期即“02/01/2010”

请帮助

1 个答案:

答案 0 :(得分:0)

您需要设置显示的日期格式:

NSString *dateString = @"01-02-2010 12:00:00 AM";  
NSDateFormatter *inputDateFormatter = [NSDateFormatter new];
[inputDateFormatter setDateFormat:@"dd-MM-yyyy h:m:s a"];
NSDate *dateFromString = [inputDateFormatter dateFromString:dateString];

NSDateFormatter *displayDateFormatter = [NSDateFormatter new];
[displayDateFormatter setDateFormat:@"MM/dd/yyyy"];
NSString *displayDateString = [displayDateFormatter stringFromDate:dateFromString];
NSLog(@"displayDateString: %@", displayDateString);

NSLog输出
displayDateString:02/01/2010

注意:在OP代码中行
NSDate *dateFromString = [[NSDate alloc] init];
是不必要的,在下一行dateFromString已被覆盖。