iOS 获取时间及常用方法

1、获取当前时间

  • YYYY(年)/MM(月)/dd(日) hh(时):mm(分):ss(秒) SS(毫秒)
    如果想显示两位数的年份的话,可以用”YY/MM/dd hh:mm:ss SS”,两个Y代表两位数的年份。而且大写的M和小写的m代表的意思也不一样。“M”代表月份,“m”代码分钟“HH”代表24小时制,“hh”代表12小时制
NSDate *currentDate = [NSDate date];//获取当前时间,日期
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"YYYY/MM/dd hh:mm:ss SS"];//设置格式
NSTimeZone* timeZone = [NSTimeZone timeZoneWithName:@"Asia/Beijing"];//设置时区
NSString *dateString = [dateFormatter stringFromDate:currentDate];
NSLog(@"dateString:%@",dateString);

2、日期之间比较可用以下方法

  • 与otherDate比较,相同返回YES
-(BOOL)isEqualToDate:(NSDate *)otherDate;

  • 与anotherDate比较,返回较早的那个日期
-(NSDate *)earlierDate:(NSDate *)anotherDate;

  • 与anotherDate比较,返回较晚的那个日期
-(NSDate *)laterDate:(NSDate *)anotherDate;

  • 该方法用于排序时调用:
    . 当实例保存的日期值与anotherDate相同时返回NSOrderedSame
    . 当实例保存的日期值晚于anotherDate时返回NSOrderedDescending
    . 当实例保存的日期值早于anotherDate时返回NSOrderedAscending
-(NSComparisonResult)compare:(NSDate *)other;

3、常用方法

  • 返回当前时间
+(id)date;

  • 返回以当前时间为基准,然后过了secs秒的时间
+(id)dateWithTimeIntervalSinceNow:(NSTimeInterval)secs; 

  • 返回以2001/01/01 GMT为基准,然后过了secs秒的时间
+(id)dateWithTimeIntervalSinceReferenceDate:(NSTimeInterval)secs;

  • 返回以1970/01/01 GMT为基准,然后过了secs秒的时间
+(id)dateWithTimeIntervalSince1970:(NSTimeInterval)secs;//可用于转化时间戳

  • 返回以目前的实例中保存的时间为基准,然后过了secs秒的时间
-(id)addTimeInterval:(NSTimeInterval)secs;

你可能感兴趣的:(iOS 获取时间及常用方法)