加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ios – NSDateComponents的NSLog分钟和秒 – 如何显示前导零?

发布时间:2020-12-14 17:49:57 所属栏目:百科 来源:网络整理
导读:我真的需要帮助.代码结果为2:0:0,格式设置为hh:mm:ss.我希望结果是2:00:00(在分钟前加0,小时10分). NSDateFormatter *test = [[NSDateFormatter alloc] init];[test setDateFormat:@"HH:mm:ss"];NSDate *date1 = [test dateFromString:@"18:00:00"];NSDa
我真的需要帮助.代码结果为2:0:0,格式设置为hh:mm:ss.我希望结果是2:00:00(在分钟前加0,小时10分).

NSDateFormatter *test = [[NSDateFormatter alloc] init];
[test setDateFormat:@"HH:mm:ss"];
NSDate *date1 = [test dateFromString:@"18:00:00"];
NSDate *date2 = [test dateFromString:@"20:00:00"];
NSCalendar* gregorian = [[NSCalendar alloc] initWithCalendarIdentifier:NSGregorianCalendar];
unsigned int uintFlags =  NSHourCalendarUnit | NSMinuteCalendarUnit | NSSecondCalendarUnit;
NSDateComponents* differenceComponents = [gregorian components:uintFlags fromDate:date1 toDate:date2 options:0];

NSLog(@"%d:%d:%d",[differenceComponents hour],[differenceComponents minute],[differenceComponents second]);

这该怎么做?

解决方法

使用?ld说明符记录,例如:

NSLog(@"%ld:%02ld:%02ld",[differenceComponents second]);

输出:

2:00:00

另外创建像这样的NSStrings:

NSString *theString = [NSString stringWithFormat:@"%ld:%02ld:%02ld",[differenceComponents second]];
NSLog(@"%@",theString);

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读