IOS开发中常用到的工具方法(时间方面)

获取当前时间信息 (NSDateComponents)

NSCalendar *calendar = [[NSCalendar alloc] initWithCalendarIdentifier:NSCalendarIdentifierGregorian];//公历
NSDateComponents *comps = [[NSDateComponents alloc] init];
NSInteger unitFlags =NSCalendarUnitYear | NSCalendarUnitMonth |NSCalendarUnitDay | NSCalendarUnitWeekday |
NSCalendarUnitHour |NSCalendarUnitMinute | NSCalendarUnitSecond;//配置所需返回数据
comps = [calendar components:unitFlags fromDate:date];

NSCalendarUnit 可配置项如下:
NSCalendarUnitEra 纪元
NSCalendarUnitYear 年
NSCalendarUnitMonth 月
NSCalendarUnitDay 日
NSCalendarUnitHour 小时
NSCalendarUnitMinute 分钟
NSCalendarUnitSecond 秒
NSCalendarUnitWeekday 周几
NSCalendarUnitWeekdayOrdinal 本月中第几个周几
NSCalendarUnitQuarter 季度
NSCalendarUnitWeekOfMonth 一月中的第几个星期
NSCalendarUnitWeekOfYear 一年中的第几个星期
NSCalendarUnitYearForWeekOfYear //年份
NSCalendarUnitNanosecond 纳秒
NSCalendarUnitCalendar 日历
NSCalendarUnitTimeZone 时区

获取当前时间信息(NSDate、NSString)

    NSDate *date = [NSDate date];

    NSTimeZone *timeZone = [NSTimeZone systemTimeZone]; // 获取系统的时区
    NSInteger interval = [timeZone secondsFromGMTForDate: date]; 
    NSDate *localeDate = [date dateByAddingTimeInterval: interval];


    NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
    [formatter setDateFormat:@"yyyy-MM-dd"];
    NSString *time = [formatter stringFromDate:date]; //当前string格式时间

    NSDateFormatter *formatter = [[NSDateFormatter alloc] init] ;
    [formatter setDateFormat:@"yyyy-MM-dd"];
    NSDate *date=[formatter dateFromString:time]; //当前date格式时间

拿到时间后可以使用 earlierDate、laterDate、compare、isEqualToDate等判断和对比时间

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值