//
// NSDate+Joe.h
// WeiBo
//
// Created by 张秀清 on 15/9/17.
// Copyright (c) 2015年 张秀清. All rights reserved.
// #import <Foundation/Foundation.h> @interface NSDate (Joe) /**
* 是否是今天
*/
-(BOOL)isToday;
/**
* 是否是这个月
*/
-(BOOL)isThisYear;
/**
* 是否是今年
*/
-(BOOL)isThisMonth;
/**
* 是否为昨天
*/
- (BOOL)isYesterday; /**
* 返回'YYYY-MM-DD'的nsdate
*/
- (NSDate *)dateWithYMD; /**
* 返回与当前时间的差距
*/
- (NSDateComponents *)deltaWithNow;
@end //
// NSDate+Joe.m
// WeiBo
//
// Created by 张秀清 on 15/9/17.
// Copyright (c) 2015年 张秀清. All rights reserved.
// #import "NSDate+Joe.h" @implementation NSDate (Joe) -(BOOL)isToday
{
NSCalendar *calendar = [NSCalendar currentCalendar]; int NSCalendarUnit = NSCalendarUnitYear | NSCalendarUnitMonth | NSCalendarUnitDay; //获取当前的年月日
NSDateComponents *nowCps = [calendar components:NSCalendarUnit fromDate:[NSDate date]]; NSDateComponents *selfCps = [calendar components:NSCalendarUnit fromDate:self]; return (nowCps.year == selfCps.year) && (nowCps.month == selfCps.month) && (nowCps.day == selfCps.day);
} -(BOOL)isThisMonth
{
NSCalendar *calendar = [NSCalendar currentCalendar]; int NSCalendarUnit = NSCalendarUnitYear | NSCalendarUnitMonth; //获取当前的年月日
NSDateComponents *nowCps = [calendar components:NSCalendarUnit fromDate:[NSDate date]]; NSDateComponents *selfCps = [calendar components:NSCalendarUnit fromDate:self]; return (nowCps.year == selfCps.year) && (nowCps.month == selfCps.month); } -(BOOL)isThisYear
{
NSCalendar *calendar = [NSCalendar currentCalendar]; int NSCalendarUnit = NSCalendarUnitYear; //获取当前的年月日
NSDateComponents *nowCps = [calendar components:NSCalendarUnit fromDate:[NSDate date]]; NSDateComponents *selfCps = [calendar components:NSCalendarUnit fromDate:self]; return nowCps.year == selfCps.year;
} /**
* 是否为昨天
*/
- (BOOL)isYesterday
{
// 2014-05-01
NSDate *nowDate = [[NSDate date] dateWithYMD]; // 2014-04-30
NSDate *selfDate = [self dateWithYMD]; // 获得nowDate和selfDate的差距
NSCalendar *calendar = [NSCalendar currentCalendar];
NSDateComponents *cmps = [calendar components:NSCalendarUnitDay fromDate:selfDate toDate:nowDate options:0];
return cmps.day == 1;
} /**
* 返回'YYYY-MM-DD'的nsdate
*/
- (NSDate *)dateWithYMD
{
NSDateFormatter *fmt = [[NSDateFormatter alloc] init];
fmt.dateFormat = @"yyyy-MM-dd";
NSString *selfStr = [fmt stringFromDate:self];
return [fmt dateFromString:selfStr];
} /**
* 返回与当前时间的差距
*/
- (NSDateComponents *)deltaWithNow
{
NSCalendar *calendar = [NSCalendar currentCalendar];
int unit = NSCalendarUnitHour | NSCalendarUnitMinute | NSCalendarUnitSecond;
return [calendar components:unit fromDate:self toDate:[NSDate date] options:0];
}
@end

最新文章

  1. JavaScript闭包(Closure)
  2. [tem]Longest Increasing Subsequence(LIS)
  3. Mysql大量插入随机数据方法--存储过程
  4. 我的CSS样式记事本(1)
  5. nginx配置:支持phpfastcgi,nginx和php-cgi通信,部分nginx常量解释
  6. 非主窗体在任务栏显示按钮(简单好用)good
  7. copy_part_stat.sql
  8. python全栈开发-Day11 迭代器、生成器、面向过程编程
  9. 关于java使用POI导出ppt ,其中表格setText 失败问题
  10. [转帖]CS、IP和PC寄存器
  11. windows同时安装了两种jdk
  12. 转://oracle 重新编译用户无效对象
  13. C#如何HttpWebRequest模拟登陆,获取服务端返回Cookie以便登录请求后使用
  14. 18 LVM逻辑卷管理
  15. PHP中Cookie的使用
  16. &lt;黑天鹅&gt;读书笔记
  17. 在线js调试工具JSbin、jsFiddle
  18. MVC ---- ckeditor 循环遍历并绑定blur事件
  19. Codeforces Round #222 (Div. 1) B. Preparing for the Contest 二分+线段树
  20. linux下ntp服务器搭建方法

热门文章

  1. Java初学者作业——完成对已定义类(Admin)的对象的创建。并完成属性的赋值和方法的调用。
  2. 「超市管理系统——商品管理」 · Java Swing + MySQL JDBC开发
  3. 如何使用NiFi等构建IIoT系统
  4. golang vue 使用 websocket 的例子
  5. python requests发起请求,报“Max retries exceeded with url”
  6. Git_同一个本地仓库上传到不同的远端仓库(github、gitee)
  7. [ css ] 实现漂亮的输入框动画(借鉴自panjiachen的后台管理项目)
  8. 第10组 Beta冲刺 总结
  9. Cookie.Session到Token和JWT
  10. javaScript(笔记1)