NSDate 的一些操作(比较、创建、在现有date加减一定时间等)
创建当前时间
- NSDate *date = [NSDate date];
从现在开始的24小时
NSTimeInterval a_day = 24*60*60;
NSDate *tomorrow = [NSDate dateWithTimeIntervalSinceNow:a_day];
根据已有日期创建日期
- NSTimeInterval a_day = 24*60*60;
- NSDate *date = [NSDate date];
- NSDate *tomorrow = [date addTimeInterval: date];
日期比较
- BOOL isEqual = [date isEqualToDate:tomorrow];
- f(isEqual){
- NSLog(@"equal");
//获取较早的日期
- NSDate *earlier_date = [tomorrow earlierDate:date];
- NSLog(@"earlierDate = %@",earlierDate);
//较晚的日期
- NSDate *laterDate = [tomorrow laterDate:date];
- NSLog(@"laterDate = %@",laterDate);
//两个日期之间相隔多少秒
- NSTimeInterval secondsInterval= [date timeIntervalSinceDate:tomorrow];
- NSLog(@"secondsInterval= %lf",secondsInterval);
//通过NSCalendar类来创建日期
- NSDateComponents *comps = [[NSDateComponentsalloc]init];
- [comps setMonth:01];
- [comps setDay:31];
- [comps setYear:2013];
- NSCalendar *calendar = [[NSCalendaralloc]initWithCalendarIdentifier:NSGregorianCalendar];
- NSDate *date = [calendar dateFromComponents:comps];
//从已有日期获取日期
- unsigned units = NSMonthCalendarUnit|NSDayCalendarUnit|NSYearCalendarUnit;
- NSDateComponents *_comps = [calendar components:units fromDate:date];
- NSInteger month = [_comps month];
- NSInteger year = [_comps year];
- NSInteger day = [_comps day];
- //NSDateFormatter实现日期的输出
- NSDateFormatter *formatter = [[NSDateFormatteralloc]init];
- [formatter setDateStyle:NSDateFormatterFullStyle];//直接输出的话是机器码
- //或者是手动设置样式[formatter setDateFormat:@"yyyy-mm-dd"];
- NSString *dateString = [formatter stringFromDate:date];
- NSLog(@"dateString = %@",dateString);
- NSLog(@"formater = %@",formatter);
//获取日期格式对象
- - (NSDateFormatter *)getDateFormatter {
- if (dateFormatter == nil) {
- dateFormatter = [[NSDateFormatter alloc] init];
- [dateFormatter setDateStyle:NSDateFormatterMediumStyle];
- [dateFormatter setTimeStyle:NSDateFormatterNoStyle];
- }
- return dateFormatter;
- }
NSDate 的一些操作(比较、创建、在现有date加减一定时间等)的更多相关文章
- Java 中日期的几种常见操作 —— 取值、转换、加减、比较
Java 的开发过程中免不了与 Date 类型纠缠,准备总结一下项目经常使用的日期相关操作,JDK 版本 1.7,如果能够帮助大家节约那么几分钟起身活动一下,去泡杯咖啡,便是极好的,嘿嘿.当然,我只提 ...
- 聊聊 Java 中日期的几种常见操作 —— 取值、转换、加减、比较
Java 的开发过程中免不了与 Date 类型纠缠,准备总结一下项目经常使用的日期相关操作,JDK 版本 1.7,如果能够帮助大家节约那么几分钟起身活动一下,去泡杯咖啡,便是极好的,嘿嘿.当然,我只提 ...
- NSDate 总结日期操作
IOS Object-c NSDate总结日期操作 //NSDate //1, 创建NSDate对象 NSDate *nowDate = [NSDate date]; NSLog(@"%@& ...
- iOS——文件操作NSFileManager (创建、删除,复制,粘贴)
iOS——文件操作NSFileManager (创建.删除,复制,粘贴) iOS的沙盒机制,应用只能访问自己应用目录下的文件.iOS不像android,没有SD卡概念,不能直接访问图像.视 ...
- windows下mongodb基础玩法系列二CURD操作(创建、更新、读取和删除)
windows下mongodb基础玩法系列 windows下mongodb基础玩法系列一介绍与安装 windows下mongodb基础玩法系列二CURD操作(创建.更新.读取和删除) windows下 ...
- C#操作Excel(创建、打开、读写、保存)几种方法的总结
在.NET开发中,不管是web程序还是桌面软件(尤其是涉及数据库操作的MIS系统等),常常需操作Excel,如导出数据到Excel,读取Excel中数据到程序中等.总结起来,其操作不外乎创建.打开.读 ...
- 使用navicat操作PostPreSql创建表并设置主键自增和触发器
使用navicat操作PostPreSql创建表并设置主键自增和触发器 1).创建递增序列 2).创建表,使用序列,设置主键递增 3)定义触发函数 自动生成时间戳函数 CREATE OR REPLAC ...
- EF如何操作内存中的数据以及加载相关联表的数据:延迟加载、贪婪加载、显示加载
之前的EF Code First系列讲了那么多如何配置实体和数据库表的关系,显然配置只是辅助,使用EF操作数据库才是每天开发中都需要用的,这个系列讲讲如何使用EF操作数据库.老版本的EF主要是通过Ob ...
- C语言数组和指针的理解_在取地址运算上的操作_指针加减操作_a 和&a 的区别
1.一个实例+理论分析 在了解数组和指针的访问方式前提下,下面再看这个例子: main() { int a[5]={1,2,3,4,5}; int *ptr=(int *)(&a+1); pr ...
随机推荐
- JS知识点概况
1.什么是JavaScript a) JavaScript 被设计用来向 HTML 页面添加交互行为. b) JavaScript 是一种脚本语言(脚本语言是一种轻量级的编程语言). c) ...
- videojs 视频开发API
videojs就提供了这样一套解决方案,他是一个兼容html5的视频播放工具,早期版本兼容所有浏览器,方法是:提供三个后缀名的视频,并在不支持html5的浏览器下生成一个flash的版本. 最新的3. ...
- vs2012 设计器 视图异常
WPF 开发/(其他xaml app 的开发) 的时候 设计视图功能非常方便 不过有时候经常遇到 设计器加载失败的情况,原因很多 很多时候是代码问题导致,设计器无法展现视图,也有sliverlig ...
- appium安装 For windows
java sdk,android SDK,maven,genymotion全部已经安装完毕,只是安装appium 因为现在的appium(AppiumForWindows_1_4_13_1)需要自己重 ...
- BAK文件怎么恢复到数据库中
1.右击SQLServer2000实例下的“数据库”文件夹.就是master等数据库上一级的那个图标.选择“所有任务”,“还原数据库” 2.在“还原为数据库”中填上你希望恢复的数据库名字.这个名字应该 ...
- sql一些命令
1.创建表 create table tSId ( tSid int identity(1,1) primary key, tSName varchar(10) check(len(tSName)&g ...
- <link>: rel, href
Reference: http://www.w3schools.com/tags/tag_link.asp <link> Attributes: Attribute Value Descr ...
- Java 中级IO流基础及主要API编程
1. IO流基础知识,流 是字节从源到目的地的运行的轨迹,次序是有意义的, 字节会按照次序进行传递, 比如Hello World 在下图中的传递的轨迹.该图形象的解释了IO中流的概念.流中全是字节.2 ...
- Lotto--poj2245
Lotto Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 6605 Accepted: 4185 Description ...
- [XMPP]简易的聊天室实现[一]
@import url(http://i.cnblogs.com/Load.ashx?type=style&file=SyntaxHighlighter.css);@import url(/c ...