转换多种格式时NSDateFormatter无法正常工作

时间:2012-09-11 20:17:58

标签: iphone ios nsdateformatter

我有一个转换多种日期格式的类。

当我这样做时它起作用:

-(NSString*)getTimeStampWithFormat:(NSString*) formatStr{
    dateFormatter = [[NSDateFormatter alloc] init];
    [dateFormatter setDateFormat:formatStr];
    NSString *currentDate = [dateFormatter stringFromDate:[NSDate date]];
    return currentDate;
}

当我这样做时它不起作用

-(void) initDF{
    dateFormatter = [[NSDateFormatter alloc] init];
}

-(NSString*)getTimeStampWithFormat:(NSString*) formatStr{
    [dateFormatter setDateFormat:formatStr];
    NSString *date = [dateFormatter stringFromDate:[NSDate date]];
        return currentDate;
}

我多次调用getTimeStampWithFormat:方法来转换不同的格式。在第二种方法中,我只分配一次内存并且多次转换它会给出nil。

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

1 个答案:

答案 0 :(得分:0)

正如苹果所说:

  

创建日期格式化程序并不是一种廉价的操作。如果您可能经常使用格式化程序,则缓存单个实例通常比创建和处理多个实例更有效。一种方法是使用静态变量。

但我想知道为什么它总是返回nil,你能告诉我们一些格式字符串吗?

注意:任何机构都知道如何在问题中添加评论?我找不到“评论”按钮。