当我
时[dateFormatter setDateFormat:@"HH:mm"]
用于获取当前小时 我得到正确的时间直到12:59但之后又从1点开始,即12:59显示为12:59但是14:00显示为2:00。
如果有人遇到类似问题并请提出解决方案,请告诉我。
由于
答案 0 :(得分:3)
请检查以下代码。
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];
答案 1 :(得分:1)
我同意
[dateFormatter setDateFormat:@"HH:mm"]
应该给你24小时的时间。但是如果用户设置24小时关闭,这不起作用。尽管在格式字符串中使用HH,但用户设置会覆盖此字符串。这可能是您的问题!
答案 2 :(得分:0)
使用此
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];
答案 3 :(得分:0)
试试此代码
[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"];
希望它适合你。
答案 4 :(得分:0)
您可以使用
[dateFormatter setDateFormat:@"H:mm"]
24小时时间格式
答案 5 :(得分:0)
将日期格式设置为
[dateFormatter setDateformat:@"HH:MM a"];