OC关于NSDate类的方法和应用的总结!(全)-创新互联

  1. //1.创建日期对象

    成都创新互联公司专业为企业提供无锡网站建设、无锡做网站、无锡网站设计、无锡网站制作等企业网站建设、网页设计与制作、无锡企业网站模板建站服务,十年无锡做网站经验,不只是建网站,更提供有价值的思路和整体网络服务。
  2.         //创建的NSDate对象,获得的永远是0时区时间,如果要是求东八区时间,就加8个小时

  3.         NSDate *date = [NSDate date];

  4.         NSLog(@"%@",date);

  5.         //创建明天此时的日期(时间间隔都是以秒为单位计算的)

  6.         NSDate *tomorrow  = [NSDate dateWithTimeIntervalSinceNow:24*60*60];

  7.         NSLog(@"%@",tomorrow);

  8.         //创建昨天此时的日期(- 表示从现在开始向前面算起)

  9.         NSDate *yesterday = [NSDate dateWithTimeIntervalSinceNow:-24*60*60];

  10.         NSLog(@"%@",yesterday);

  11.         //获取两个日期的时间间隔(timeInterval 是对双精度类型的重新定义,所以输出的时间要用%g,时间价格也是按秒来计算的)

  12.         NSTimeInterval timeInterval = [tomorrow timeIntervalSinceDate:yesterday];

  13.         NSLog(@"%g",timeInterval / 60 / 60 / 24);

  14.         //比较日期的早晚

  15.         //(1)比较两个日期中较早的日期(返回值类型为NSDate)

  16.         NSDate *earlerDate = [yesterday earlierDate:tomorrow];

  17.         NSLog(@"%@",earlerDate);

  18.         //(2)比较两个日期中较晚的日期

  19.         NSDate *laterDate = [yesterday laterDate:tomorrow];

  20.         NSLog(@"%@",laterDate);

  21.         //(3)比较两个日期(返回值类型为枚举类型,是拿第一个参数来减第二个参数的值,枚举值为 -1,0,1)

  22.         NSComparisonResult result = [yesterday compare:tomorrow];

  23.         NSLog(@"%ld",result);

  24.         //时间间隔的练习:如果一个固定的时间到现在的时间在60秒以内,输出"刚刚",如果在"60 - 3600"输出"多少分钟前",如果在"3600 - 3600*24",输出"在多少小时前",如果在大于"3600*24"输出多少天前

  25.         NSDate *date1 = [NSDate date];

  26.         NSDate *date2 = [NSDate dateWithTimeIntervalSinceNow:100];

  27.         NSTimeInterval time = [date2 timeIntervalSinceDate:date1];

  28.         if (time > 0 && time <= 60) {

  29.             NSLog(@"刚刚");

  30.         }else if (time <= 3600){

  31.             NSLog(@"%d分钟前",(int)(time / 60));

  32.         }else if (time <= 33600 * 24){

  33.             NSLog(@"%d小时前",(int)(time / 60 / 60));

  34.         }else{

  35.             NSLog(@"%d天前",(int)(time / 60 / 60 /24));

  36.         }

  37.         //NSDateFormatter日期格式类

  38.         //作用:将日期以一定的格式进行转换(转换为字符串),另外也可将日期格式串转换为NSDate对象

  39.         NSDate *date3 = [NSDate date];//创建当前的日期对象

  40.         NSDateFormatter *formatter = [[NSDateFormatter alloc] init];//创建日期格式对象

  41.         [formatter setDateFormat:@"yyyy-MM-dd HH:mm:SS"];//为对象设置日期的格式

  42.         //指定日期格式

  43.           //HH 表示24小时制 hh表示十二小时制

  44.           //MM 表示月份 mm 表示分钟

  45.           //dd 表示当月的天数 DD表示当天处于本年第几天

  46.           //ss 表示秒数

  47.           //如果年份给两个yy,则只显示年份的后两位,如果给其他个数的y,都是显示完整的年份.

  48.           //例如:MM等 如果给两位,则月份如果是一位时,前面补0.

  49.         [formatter setDateStyle:NSDateFormatterFullStyle];//设置日期输出的风格

  50.         [formatter setTimeStyle:NSDateFormatterFullStyle];//设置时间输出的风格

  51.         NSString *dateStr = [formatter stringFromDate:date3];

  52.         NSLog(@"%@",dateStr);

  53.         //将日期格式串转化为NSDate对象@"2008-08-08 20:08:08"

  54.         NSString  *dateStr1 = @"2008-08-08 20:08:08";

  55.         //创建日期格式化对象

  56.         NSDateFormatter *formatter1 = [[NSDateFormatter alloc]init];

  57.         //设置日期格式(一定要和日期格式串中日期的格式保持一致).

  58.         [formatter1 setDateFormat:@"yyyy-MM-dd HH:mm:ss"];

  59.         //将格式字符串转换为NSData对象

  60.         NSDate *date4 = [formatter1 dateFromString:dateStr1];

  61.         NSLog(@"%@",date4);

另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。


当前文章:OC关于NSDate类的方法和应用的总结!(全)-创新互联
网站链接:http://scyanting.com/article/dedjdo.html