当我
[dateFormatter setDateFormat:@"HH:mm"]
用于获取当前时间我得到正确的时间直到 12:59 但之后它再次从 1:00 开始,即 12:59 显示为 12:59 但 14:00 显示为 2:00。
如果有人也有类似的问题,请告诉我并提出解决方案。
谢谢
当我
[dateFormatter setDateFormat:@"HH:mm"]
用于获取当前时间我得到正确的时间直到 12:59 但之后它再次从 1:00 开始,即 12:59 显示为 12:59 但 14:00 显示为 2:00。
如果有人也有类似的问题,请告诉我并提出解决方案。
谢谢
请检查下面的代码。
NSDateFormatter *dateFormator = [[NSDateFormatter alloc] init];
dateFormator.dateStyle = NSDateFormatterMediumStyle;
dateFormator.dateFormat=@"HH:mm:ss";
NSCalendar * calender=[[NSCalendar alloc]initWithCalendarIdentifier:[NSGregorianCalendar autorelease]];
NSDateComponents * component=[calender components:NSHourCalendarUnit|NSMinuteCalendarUnit fromDate:date];
我同意
[dateFormatter setDateFormat:@"HH:mm"]
应该给你24小时的时间。但如果用户将 24 小时设置为关闭,这将不起作用。尽管在格式字符串中使用了 HH,但用户设置会覆盖它。这可能是您的问题!
将您的日期格式设置为
[dateFormatter setDateformat:@"HH:MM a"];
用这个
NSDate *date = [NSDate date];
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"YYYY-MM-dd kk:mm:ss"];
[dateFormatter setLocale:[NSLocale currentLocale]];
NSString *dateString = [dateFormatter stringFromDate:date];
试试这个代码
[dateFormatter setDateFormat:@"hh:mm:ss"];
HH : 24 小时制
hh : 12 小时制
所以在你的情况下
//转换为日期后
如果开启
[formatter setDateFormat:@"YYYY-MM-dd HH:mm:ss"];
如果关闭
[formatter setDateFormat:@"YYYY-MM-dd hh:mm:ss a"];
希望对你有效。
您可以使用
[dateFormatter setDateFormat:@"H:mm"]
24 小时时间格式