无法获得当前日期yyyy-mm-dd

时间:2016-07-14 11:40:41

标签: ios objective-c

我无法弄清楚我做错了什么。 尝试使用格式为NSString的当前日期获取yyyy-mm-dd

_convenienceFormatter = [[NSDateFormatter alloc] init];
_convenienceFormatter.dateFormat = @"yyyy-mm-dd";
NSString *string = [_convenienceFormatter stringFromDate:[NSDate date]];

输出:2016-37-14

我做错了什么?

4 个答案:

答案 0 :(得分:3)

我尝试了你的编码

NSDateFormatter *convenienceFormatter = [[NSDateFormatter alloc] init];
convenienceFormatter.dateFormat = @"yyyy-mm-dd";
NSString *string = [convenienceFormatter stringFromDate:[NSDate date]];

它给了我2016-14-14

NSDateFormatter *Formatter = [[NSDateFormatter alloc] init];
Formatter.dateFormat = @"yyyy-MM-dd";
NSString *stringFor = [Formatter stringFromDate:[NSDate date]];

但上面的代码给了我2016-07-14

  

注意:通常mm表示分钟.MM表示月份

Date Formatting Table

Dates

Date Programming

Date Formatter

答案 1 :(得分:2)

试试这个辅助方法。

-(NSString *) getCurrentDate {
    NSDateFormatter *dateformater = [[NSDateFormatter alloc]init];
    [dateformater setDateFormat:@"yyyy-MM-dd"];
    NSString *today=[dateformater stringFromDate:[NSDate date]];
    return today;
}

答案 2 :(得分:1)

您需要将日期格式化程序更改为MM而不是mm,因为mm用于minute更改您的代码

_convenienceFormatter = [[NSDateFormatter alloc] init];
_convenienceFormatter.dateFormat = @"yyyy-MM-dd";
NSString *string = [_convenienceFormatter stringFromDate:[NSDate date]]; 

答案 3 :(得分:1)

你需要写MM而不是mm。

_convenienceFormatter = [[NSDateFormatter alloc] init];
_convenienceFormatter.dateFormat = @"yyyy-MM-dd";
NSString *string = [_convenienceFormatter stringFromDate:[NSDate date]];