• iOS开发-OC篇-NSDate


       今天总结一下OC中NSDate的一些简单的用法,注意可不是NSData哦!

       NSDate的使用 

    1> NSDate初始化方法

    //获取当前时间

    NSDate * date = [NSDate date];

    //返回以当前时间为基准,然后过了secs秒的时间 

    [NSDate dateWithTimeIntervalSinceNow:60 * 60 * 24];

    //返回以lastDate为基准,然后过了secs秒的时间 

    [NSDate dateWithTimeInterval:60 * 60 * 24 sinceDate:lastDate];

    //返回以2001年1月1日为基准,然后过了secs秒的时间 

    [NSDate dateWithTimeIntervalSinceReferenceDate:0];

    //返回以1970年1月1日为基准,然后过了secs秒的时间 

    [NSDate dateWithTimeIntervalSince1970:60 * 60 * 24];

    2> 获取时间界限方法

    //将来的时间界限4000年

    [NSDate distantFuture];

    //过去的时间界限0000年

    [NSDate distantPast];

    3> 比较时间方法

    //比较两个时间是否相同

    [date isEqualToDate:date2];

    //返回比较晚的日期

    [date laterDate:date2];

    //返回比较早的日期

    [date earlierDate:date2];

    //返回NSComparisonResult对象

    [date compare:date2];

    4> 获取时间间隔方法

    //获取两个时间的时间间隔

    [date2 timeIntervalSinceDate:date];

    //获取现在与2001年的时间间隔

    [NSDate timeIntervalSinceReferenceDate];

    //获取date1与2001年的时间间隔

    [date1 timeIntervalSinceReferenceDate];

    //获取date1与现在时间间隔

    date1.timeIntervalSinceNow

    5> 添加时间间隔

    [date dateByAddingTimeInterval:60 * 60 * 24];

    6> 根据当前位置字符串展示日期

    [date descriptionWithLocale:[NSLocale currentLocale]];

    2、NSDateFormatter格式化日期类

    举例:

     NSDate * date = [NSDate date];

    //初始化

    NSDateFormatter * formatter = [[NSDateFormatter alloc] init];

    //设置日期格式

    formatter.dateStyle = NSDateFormatterFullStyle;

    //设置时间格式

    formatter.timeStyle = NSDateFormatterShortStyle;

    //设置区域语言

    formatter.locale = [NSLocale localeWithLocaleIdentifier:@"zh-cn"];

    //将日期按以上格式转换成字符串

    NSString * dateString = [formatter stringFromDate:date];

    NSLog(@"%@",dateString);

    自定义日期格式NSDate转NString:

    NSDate * date = [NSDate date];

    NSDateFormatter * formatter = [[NSDateFormatter alloc] init];

    //设置自定义日期格式

    formatter.dateFormat = @"yyyy-MM-dd a hh:mm:ss.SSS E Z ";

    NSString * dateString = [formatter stringFromDate:date];

    NSLog(@"%@",dateString);

    自定义日期格式NString转NSDate:

    NSString * string = @"2015-12-29 10:18:19";

    NSDateFormatter * formatter = [[NSDateFormatter alloc] init];

    formatter.dateFormat = @"yyyy-MM-dd HH:mm:ss";

    NSDate * date = [formatter dateFromString:string];

    NSLog(@"%@",date);

    总结dateFormat格式:

    yyyy     年

    MM      月

    dd    日

    HH    24小时

    hh    12小时

    mm       分钟

    ss            秒

    SSS         微秒

    a            上午下午

    E             星期

    Z             时区

    3、时间类的应用

    1、测试一段代码的执行时间

    NSDate * date = [NSDate date];

    这里放测试代码

    NSLog(@"%lf",[[NSDate date] timeIntervalSinceDate:date]);

    2、Unix时间戳

    NSDate转时间戳

    [[NSDate date] timeIntervalSince1970];

    时间戳转NSDate

    [NSDate dateWithTimeIntervalSince1970:1451394269];

  • 相关阅读:
    MySQL分库分表环境下全局ID生成方案
    centos添加php及mysql环境变量
    shell中的常用通配符,字符类
    centos7 安装xinetd,telnet
    centos7 systemctl一些用法
    ps命令
    nginx与php-fpm通信的两种方式
    nginx常用功能
    MySQL安装
    MySql与MariaDB由来与历程
  • 原文地址:https://www.cnblogs.com/Horkly/p/5339329.html
Copyright © 2020-2023  润新知