如何使用带有日期数组的NSDate格式化程序?

时间:2011-02-16 03:55:36

标签: iphone objective-c nsmutablearray nsarray 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);

任何帮助将不胜感激,谢谢。

2 个答案:

答案 0 :(得分:3)

我建议您先将NSDate formatter提供给您的日期,然后将这些对象提供给NSMutableArray,每当您从数组中获取对象时,您都会获得所需的格式。

希望你明白我的意思......祝你好运!

答案 1 :(得分: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);