Как использовать средство форматирования NSDate с массивом дат?

Я пытаюсь создать массив из 30 дней с текущей даты и поместить их в правильно отформатированный массив. В настоящее время у меня есть работающий генератор, чтобы получить 30 дней с текущей даты и поместить его в массив, но я не знаю, как использовать средство форматирования NSDate для массива. Я знаю, как использовать средство форматирования для одного элемента, но как мне отформатировать все даты в моем массиве? Формат, который я хотел бы, (день месяца). Вот мой код:

NSMutableArray* dates = [[NSMutableArray alloc] init];
    int numberOfDays=30;
    NSDate *startDate=[NSDate date];
    NSDate *tempDate=[startDate copy];
    for (int i=0;i<numberOfDays;i++) {
        NSLog(@"%@",tempDate.description);
        tempDate=[tempDate dateByAddingTimeInterval:(60*60*24)];
        [dates addObject:tempDate.description];
    }

    NSLog(@"%@",dates);

Любая помощь будет оценена по достоинству, спасибо.


person 0SX    schedule 16.02.2011    source источник


Ответы (2)


использовать так,

NSMutableArray* dates = [[NSMutableArray alloc] init];
    int numberOfDays=30;
    NSDate *startDate=[NSDate date];
    NSDate *tempDate=[startDate copy];
    for (int i=0;i<numberOfDays;i++) {
        NSLog(@"%@",tempDate.description);
        tempDate=[tempDate dateByAddingTimeInterval:(60*60*24)];
     NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];
    [dateFormat setDateFormat:@"MM/dd"];
    NSString *dateString = [dateFormat stringFromDate:tempDate];
    tempDate=[dateFormat dateFromString:dateString];
    [dateFormat release];

        [dates addObject:tempDate.description];
    }

    NSLog(@"%@",dates);
person Ishu    schedule 16.02.2011
comment
объект даты всегда использует этот формат, если вам нужна какая-либо пользовательская логика с этим, вам нужно преобразовать его в NSDateComponents. Любой формат, который вы используете, дает тот же формат для объекта даты, но если вы измените его в строке, он просто даст то, что вы хотели. - person Ishu; 16.02.2011

я предлагаю вам сначала дать NSDate formatter вашей дате, а затем передать эти объекты NSMutableArray, и всякий раз, когда вы извлекаете объект из массива, вы получаете требуемый формат.

Надеюсь, вы поняли мою точку зрения... Удачи!

person Sudhanshu    schedule 16.02.2011
comment
Это хороший способ, я пытаюсь реализовать это и дать ответ по этой концепции. - person Ishu; 16.02.2011