创建当前时间

  1. NSDate *date = [NSDate date];

从现在开始的24小时

NSTimeInterval a_day = 24*60*60;

NSDate *tomorrow = [NSDate dateWithTimeIntervalSinceNow:a_day];

根据已有日期创建日期

  1. NSTimeInterval a_day = 24*60*60;
  2. NSDate *date = [NSDate date];
  3. NSDate *tomorrow = [date addTimeInterval: date];

日期比较

  1. BOOL isEqual = [date isEqualToDate:tomorrow];
  2. f(isEqual){
  3. NSLog(@"equal");

//获取较早的日期

  1. NSDate *earlier_date = [tomorrow earlierDate:date];
  2. NSLog(@"earlierDate  = %@",earlierDate);

//较晚的日期

  1. NSDate *laterDate = [tomorrow laterDate:date];
  2. NSLog(@"laterDate  = %@",laterDate);

//两个日期之间相隔多少秒

  1. NSTimeInterval secondsInterval= [date timeIntervalSinceDate:tomorrow];
  2. NSLog(@"secondsInterval=  %lf",secondsInterval);

//通过NSCalendar类来创建日期

  1. NSDateComponents *comps = [[NSDateComponentsalloc]init];
  2. [comps setMonth:01];
  3. [comps setDay:31];
  4. [comps setYear:2013];
  5. NSCalendar *calendar = [[NSCalendaralloc]initWithCalendarIdentifier:NSGregorianCalendar];
  6. NSDate *date = [calendar dateFromComponents:comps];

//从已有日期获取日期

  1. unsigned units  = NSMonthCalendarUnit|NSDayCalendarUnit|NSYearCalendarUnit;
  2. NSDateComponents *_comps = [calendar components:units fromDate:date];
  3. NSInteger month = [_comps month];
  4. NSInteger year = [_comps year];
  5. NSInteger day = [_comps day];
  6. //NSDateFormatter实现日期的输出
  7. NSDateFormatter *formatter = [[NSDateFormatteralloc]init];
  8. [formatter setDateStyle:NSDateFormatterFullStyle];//直接输出的话是机器码
  9. //或者是手动设置样式[formatter setDateFormat:@"yyyy-mm-dd"];
  10. NSString *dateString = [formatter stringFromDate:date];
  11. NSLog(@"dateString = %@",dateString);
  12. NSLog(@"formater = %@",formatter);

//获取日期格式对象

    1. - (NSDateFormatter *)getDateFormatter {
    2. if (dateFormatter == nil) {
    3. dateFormatter = [[NSDateFormatter alloc] init];
    4. [dateFormatter setDateStyle:NSDateFormatterMediumStyle];
    5. [dateFormatter setTimeStyle:NSDateFormatterNoStyle];
    6. }
    7. return dateFormatter;
    8. }

NSDate 的一些操作(比较、创建、在现有date加减一定时间等)的更多相关文章

  1. Java 中日期的几种常见操作 —— 取值、转换、加减、比较

    Java 的开发过程中免不了与 Date 类型纠缠,准备总结一下项目经常使用的日期相关操作,JDK 版本 1.7,如果能够帮助大家节约那么几分钟起身活动一下,去泡杯咖啡,便是极好的,嘿嘿.当然,我只提 ...

  2. 聊聊 Java 中日期的几种常见操作 —— 取值、转换、加减、比较

    Java 的开发过程中免不了与 Date 类型纠缠,准备总结一下项目经常使用的日期相关操作,JDK 版本 1.7,如果能够帮助大家节约那么几分钟起身活动一下,去泡杯咖啡,便是极好的,嘿嘿.当然,我只提 ...

  3. NSDate 总结日期操作

    IOS Object-c NSDate总结日期操作 //NSDate //1, 创建NSDate对象 NSDate *nowDate = [NSDate date]; NSLog(@"%@& ...

  4. iOS——文件操作NSFileManager (创建、删除,复制,粘贴)

    iOS——文件操作NSFileManager (创建.删除,复制,粘贴)       iOS的沙盒机制,应用只能访问自己应用目录下的文件.iOS不像android,没有SD卡概念,不能直接访问图像.视 ...

  5. windows下mongodb基础玩法系列二CURD操作(创建、更新、读取和删除)

    windows下mongodb基础玩法系列 windows下mongodb基础玩法系列一介绍与安装 windows下mongodb基础玩法系列二CURD操作(创建.更新.读取和删除) windows下 ...

  6. C#操作Excel(创建、打开、读写、保存)几种方法的总结

    在.NET开发中,不管是web程序还是桌面软件(尤其是涉及数据库操作的MIS系统等),常常需操作Excel,如导出数据到Excel,读取Excel中数据到程序中等.总结起来,其操作不外乎创建.打开.读 ...

  7. 使用navicat操作PostPreSql创建表并设置主键自增和触发器

    使用navicat操作PostPreSql创建表并设置主键自增和触发器 1).创建递增序列 2).创建表,使用序列,设置主键递增 3)定义触发函数 自动生成时间戳函数 CREATE OR REPLAC ...

  8. EF如何操作内存中的数据以及加载相关联表的数据:延迟加载、贪婪加载、显示加载

    之前的EF Code First系列讲了那么多如何配置实体和数据库表的关系,显然配置只是辅助,使用EF操作数据库才是每天开发中都需要用的,这个系列讲讲如何使用EF操作数据库.老版本的EF主要是通过Ob ...

  9. C语言数组和指针的理解_在取地址运算上的操作_指针加减操作_a 和&a 的区别

    1.一个实例+理论分析 在了解数组和指针的访问方式前提下,下面再看这个例子: main() { int a[5]={1,2,3,4,5}; int *ptr=(int *)(&a+1); pr ...

随机推荐

  1. 【转】通过Navicat for MySQL远程连接的时候报错mysql 1130的解决方法

    错误代码是1130,ERROR 1130: Host xxx.xxx.xxx.xxx is not allowed to connect to this MySQL server 是无法给远程连接的用 ...

  2. phantomjs API

    phantomjs使用说明         phantomjs实现了一个无界面的webkit浏览器.虽然没有界面,但dom渲染.js运行.网络访问.canvas/svg绘制等功能都很完备,在页面抓取. ...

  3. android一些常用的代码1(收藏)

    以下内容来自多个开源项目的整理和自己的项目积累. 1.拨打电话 public static void call(Context context, String phoneNumber) { conte ...

  4. AspnetPager放在UpdatePanel中,回到顶部。

    最近在做一个项目时,使用了AspNetPager分页控件进行分页,为了防止点击下一页时搜索条件消失掉,使用了UpdatePanel来进行局部刷新. 由此引发了一个问题,即点击某一页时,页面没有返回到顶 ...

  5. roundcute 添加修改密码插件

    添加修改密码插件 现打开main.inc.php 文件,搜索“$rcmail_config['plugins']”,找到: // List of active plugins (in plugins/ ...

  6. centos安装如何选择安装包

    1.根据经验,选择安装包时应该按最小化原则,即不需要的或者不确定是否需要的就不安装,这样可以最大程度上确保系统安全. 2.如果安装过程落了部分包组或者其他伙伴安装时没选,再安装后可以按如下方式补上安装 ...

  7. make clean与make distclean的区别

    make clean仅仅是清除之前编译的可执行文件及配置文件. 而make distclean要清除所有生成的文件. Makefile 在符合GNU Makefiel惯例的Makefile中,包含了一 ...

  8. 禁止Chrome浏览器缓存的方法

    web开发的人经常chrome和firefox作为开发调试工具,有些时候需要禁止chrome浏览器缓存,最近也用到禁止缓存,以下介绍几种禁止chrome浏览器缓存的方法作为记录. HTML: < ...

  9. 【Python备忘】python判断文件和文件夹是否存在

    python判断文件和文件夹是否存在 import os os.path.isfile('test.txt') #如果不存在就返回False os.path.exists(directory) #如果 ...

  10. Light Bulb--zoj3203(三分法)

    Light Bulb Time Limit: 1 Second      Memory Limit: 32768 KB Compared to wildleopard's wealthiness, h ...