oc之NSDate类

#import <Foundation/Foundation.h>

int main(int argc, const char * argv[]) {
    @autoreleasepool {
        //获取代表当前日期,时间的NSDate
        NSDate *date1 = [NSDate date];
        NSLog(@"%@", date1);
        //获取从当前时间开始,一天之后的日期
        NSDate *date2 = [[NSDate alloc] initWithTimeIntervalSinceNow: 3600*24];
        NSLog(@"%@", date2);
        //获取从当前时间开始,3天之后的日期
        NSDate *date3 = [[NSDate alloc] initWithTimeIntervalSinceNow: -3*3600*24];
        NSLog(@"%@", date3);
        //获取从1970年一月一日开始,20年之后的日期
        NSDate *date4 = [NSDate dateWithTimeIntervalSince1970: 3600*24*366*20];
        NSLog(@"%@", date4);
        //获取当前系统的Locale
        NSLocale *cn = [NSLocale currentLocale];
        //获取NSDate在当前Locale下对应的字符串
        NSLog(@"%@", [date1 descriptionWithLocale: cn]);
        //获取两个日期之间较早的日期
        NSDate *earlier = [date1 earlierDate: date2];
        //获取两个日期之间较晚的日期
        NSDate *later = [date1 laterDate: date2];
        //比较两个日期,compare方法返回NSComparisonResult枚举值
        //该枚举类型包含NSOrderedAscending,NSOrderedSame和NSOrderedDescending三个值
        //分别代表调用compare:的日期位于被比较日期之前,相同,之后
        switch([date1 compare: date3])
        {
            case NSOrderedAscending:
                NSLog(@"date1位于date3之前");
                break;
            case NSOrderedSame:
                NSLog(@"date1 与date3日期相等");
                break;
            case NSOrderedDescending:
                NSLog(@"date1位于date3之后");
                break;
        }
        //获取两个时间之间的时间差
        NSLog(@"date1与date3之间时间差%g秒", [date1 timeIntervalSinceDate: date3]);
        //获取指定时间与现在的时间差
        NSLog(@"date2 与现在时间差%g秒", [date2 timeIntervalSinceNow]);
    }
    return 0;

NSLocale代表一个语言,国际环境,比如大陆的简体中文,就可通过NSLocale对象来代表,同样一个日期,在不同的语言,国家环境下,显示出来是不同的。

为了能分开处理NSDate对象所包含的各个字段的数据,Foundation框架提供了NSCalendar对象,
  • NSCalendar -- 日历类,它提供了大部分的日期计算接口,并且允许您在NSDate和NSDateComponents之间转换
  • NSTimeZone -- 时区信息
  • NSLocale -- 本地化信息
  • NSDate -- 表示一个绝对的时间点
  • NSDateComponents -- 一个封装了具体年月日、时秒分、周、季度等的类
  • NSDateFormatter -- 用来在日期和字符串之间转换

猜你喜欢

转载自blog.csdn.net/qiangshuting/article/details/80791260