我有以下示例代码,我想以MM / yyyy显示。但是,我得到的结果是dd / yyyy。

NSString *strJoinedDate = [prefs stringForKey:@"creation_date"];
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"dd/MM/yyyy HH:mm:ss a"];

NSDate *JoinedDate = [dateFormatter dateFromString:strJoinedDate];
[dateFormatter setDateFormat:@"MM/yyyy"];
NSString *strFinalJoinedDate =[NSString stringWithFormat:@"Since %@",[dateFormatter stringFromDate:JoinedDate]];

最佳答案

日期字符串(例如5/29/2018 3:23:28 AM)的日期格式错误。更改:

dd/MM/yyyy HH:mm:ss a


至:

MM/dd/yyyy hh:mm:ss a


您还需要将日期格式器的语言环境设置为en_US_POSIX

dateFormatter.locale = [NSLocale localeWithLocaleIdentifier:@"en_US_POSIX"];

关于ios - NSDate将格式设置为MM/YYYY,但结果显示dd/YYYY,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/50848980/

10-11 14:55
查看更多