Obj-c, каковы наименьшие строки кода для получения текущей даты без часов, минут, секунд и миллисекунд? - PullRequest
0 голосов
/ 28 января 2011

Я хочу создать дату без часов, минут, секунд или миллисекунд.

Я пробовал [NSDate date], но это добавляет их.

Как я могу это сделать?

Ответы [ 2 ]

2 голосов
/ 28 января 2011

Что-то вроде ...

NSLog(@"%@", [[NSDate date]
    descriptionWithCalendarFormat:@"%Y-%m-%d" timeZone:nil
    locale:[[NSUserDefaults standardUserDefaults] dictionaryRepresentation]]);

... должен добиться цели в Mac OS X.

1 голос
/ 28 января 2011

Попробуйте:

NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];

[dateFormatter setTimeStyle:NSDateFormatterNoStyle];
[dateFormatter setDateStyle:NSDateFormatterMediumStyle];

NSDate *date = [NSDate date];

NSLog(@"%@", [dateFormatter stringFromDate:date]);

[dateFormatter release];

Настройте стиль даты так, чтобы он подходил.

Или, как предлагается, используйте setDateFormat;что-то вроде:

NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];

[dateFormatter setDateFormat:@"yyyy-mm-dd"];

NSDate *date = [NSDate date];

NSLog(@"%@", [dateFormatter stringFromDate:date]);

[dateFormatter release];
...