dar*_*sky 2 iphone cocoa-touch objective-c nsdate
问题
我有一个timestamp我正在转换为NSDate.现在我需要抽出时间.我已成功提取时间,但我唯一的问题是,如果分钟为0,则显示"0"而不是"00".因此11:00将显示为:"11:0".其他所有工作,例如11:30工作正常.
码
NSDate *date = [NSDate dateWithTimeIntervalSince1970:[self.program.sd intValue]];
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"HH:mm"];
NSCalendar *calendar = [NSCalendar currentCalendar];
NSDateComponents *components = [calendar components:(kCFCalendarUnitHour | kCFCalendarUnitMinute) fromDate:date];
NSInteger hour = [components hour];
NSInteger minute = [components minute];
NSLog(@"%d:%d", hour, minute);
Run Code Online (Sandbox Code Playgroud)
有什么建议?我做错了什么?是否有更好的方法同时提取小时和分钟,而不是我上面所做的?
谢谢!
Cam*_*ert 12
你得到了正确的价值观吗?如果你正在做的只是向用户显示时间,你应该使用NSDateFormatter从日期对象创建一个字符串.
NSDateFormatter *formatter = [[NSDateFormatter new] autorelease];
[formatter setDateFormat:@"hh:mm"];
NSString *timeString = [formatter stringFromDate:date];
Run Code Online (Sandbox Code Playgroud)
格式字符串的可能性记录在UTS#35:区域设置数据标记语言附录F:日期格式模式中.
| 归档时间: |
|
| 查看次数: |
4757 次 |
| 最近记录: |