mac*_*mac 113 objective-c nsdate hour ios
在我的申请中,我需要分别得到小时和分钟:
NSString *currentHour=[string1 substringWithRange: NSMakeRange(0,2)];
int currentHourInNumber=[currentHour intValue];
Run Code Online (Sandbox Code Playgroud)
考虑string1包含11:59:13 AM来自datepicker的包含.
在这里,如果我使用上面的代码,如果它大于9 NSMakeRange(0,1),可以获得小时.否则我需要改变以获得1到9之间的小时.
是否有任何方法可以获得小时,分钟等?
在此先感谢,请提供示例代码.
Tho*_*ler 260
使用NSDateFormatter转换string1为a NSDate,然后获取所需的NSDateComponents:
Obj-C:
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"<your date format goes here"];
NSDate *date = [dateFormatter dateFromString:string1];
NSCalendar *calendar = [NSCalendar currentCalendar];
NSDateComponents *components = [calendar components:(NSCalendarUnitHour | NSCalendarUnitMinute) fromDate:date];
NSInteger hour = [components hour];
NSInteger minute = [components minute];
Run Code Online (Sandbox Code Playgroud)
Swift 1和2:
let dateFormatter = NSDateFormatter()
dateFormatter.dateFormat = "Your date Format"
let date = dateFormatter.dateFromString(string1)
let calendar = NSCalendar.currentCalendar()
let comp = calendar.components([.Hour, .Minute], fromDate: date)
let hour = comp.hour
let minute = comp.minute
Run Code Online (Sandbox Code Playgroud)
斯威夫特3:
let dateFormatter = DateFormatter()
dateFormatter.dateFormat = "Your date Format"
let date = dateFormatter.date(from: string1)
let calendar = Calendar.current
let comp = calendar.dateComponents([.hour, .minute], from: date)
let hour = comp.hour
let minute = comp.minute
Run Code Online (Sandbox Code Playgroud)
有关dateformat的更多信息,请访问官方unicode网站
Gil*_*lin 49
如果您只需要它作为字符串呈现,则以下代码更容易
NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
[formatter setDateFormat:@"HH:mm"];
NSString *startTimeString = [formatter stringFromDate:startTimePicker.date];
Run Code Online (Sandbox Code Playgroud)
Hen*_*Two 45
这似乎是我的问题所在,不需要格式化程序:
NSDate *date = [NSDate date];
NSCalendar *calendar = [NSCalendar currentCalendar];
NSDateComponents *components = [calendar components:(NSCalendarUnitHour | NSCalendarUnitMinute) fromDate:date];
NSInteger hour = [components hour];
NSInteger minute = [components minute];
Run Code Online (Sandbox Code Playgroud)
NSDateComponents
您可以在此处找到所需的一切:https:
//developer.apple.com/library/content/documentation/Cocoa/Conceptual/DatesAndTimes/Articles/dtCalendars.html
| 归档时间: |
|
| 查看次数: |
123966 次 |
| 最近记录: |