//获取当前日期,时间
+(NSDate *)getCurrentDate{
    NSDate *now = [NSDate date];
    return now;
}

//将日期转换为字符串(日期,时间)
+(NSString *)getDateStringFromDate:(NSDate *)date{
    NSInteger location = 0;
    NSString *timeStr = @"";
    NSDateFormatter *formatter = [[NSDateFormatter alloc] init];  
    [formatter setLocale:[[NSLocale alloc] initWithLocaleIdentifier:@"en_US"]];
    [formatter setDateFormat:@"HH:mm:a"];
    NSString *ampm = [[[formatter stringFromDate:date] componentsSeparatedByString:@":"] objectAtIndex:2];
    timeStr = [formatter stringFromDate:date];
    NSRange range = [timeStr rangeOfString:[NSString stringWithFormat:@":%@",ampm]];
    location = range.location;
    NSString *string = [timeStr substringToIndex:location];
    timeStr = [NSString stringWithFormat:@"%@ %@",ampm,string];
     
    NSString *dateStr = @"";
    NSDateFormatter *Dformatter = [[NSDateFormatter alloc] init];
    [Dformatter setLocale:[[NSLocale alloc] initWithLocaleIdentifier:@"en_US"]];
    [Dformatter setDateFormat:@"yyyy-MM-dd"];     
    dateStr = [Dformatter stringFromDate:date];
    return [NSString stringWithFormat:@"%@  %@",dateStr,timeStr];
}

//计算两个日期之间的差距,过了多少天。。
+(NSInteger)getDateToDateDays:(NSDate *)date withSaveDate:(NSDate *)saveDate{
    NSCalendar* chineseClendar = [ [ NSCalendar alloc ] initWithCalendarIdentifier:NSGregorianCalendar ];   
    NSUInteger unitFlags =  NSHourCalendarUnit | NSMinuteCalendarUnit |     
    NSSecondCalendarUnit | NSDayCalendarUnit | NSMonthCalendarUnit | NSYearCalendarUnit;   
    NSDateComponents *cps = [ chineseClendar components:unitFlags fromDate:date  toDate:saveDate  options:0];   
    NSInteger diffDay   = [ cps day ];  
    return diffDay;
}

例:NSDate *lastDate = [self getSaveDate];//saveDate通过将NSDate转换为NSString来保存
    currentDate = [NSDate date];
    NSInteger day = [DateHelper getDateToDateDays:currentDate withSaveDate: lastDate];

//日期转字符串
+ (NSString * )NSDateToNSString: (NSDate * )date {     
    NSDateFormatter * formatter = [[NSDateFormatter alloc] init];
    [formatter setDateFormat: @"yyyy-MM-dd HH:mm:ss"];
    NSString *dateString = [formatter stringFromDate:date];
    return dateString;
}

//字符串转日期
+ (NSDate * )NSStringToNSDate: (NSString * )string {     
    NSDateFormatter * formatter = [[NSDateFormatter alloc] init];
    [formatter setDateFormat: kDEFAULT_DATE_TIME_FORMAT];
    NSDate *date = [formatter dateFromString :string];
    return date;
}

//1970年到现在的秒数转换成时间显示
- (NSString *)bySecondGetDate:(NSString *)second{
    NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
    [formatter setDateFormat:@"yyyy年MM月dd日 HH:mm:ss"];
    NSString *dateLoca = [NSString stringWithFormat:@"%@",second];
    NSTimeInterval time=[dateLoca doubleValue];
    NSDate *detaildate=[NSDate dateWithTimeIntervalSince1970:time];
    NSString *timestr = [formatter stringFromDate:detaildate];
    return timestr;
}

最新文章

  1. 参加SFDC的感触
  2. [nRF51822] 5、 霸屏了——详解nRF51 SDK中的GPIOTE(从GPIO电平变化到产生中断事件的流程详解)
  3. win10系统点击关机按钮后无法关机的解决办法
  4. Linux进程的前后台切换
  5. 搭建ASP JSP运行环境
  6. 【转】【SSE】基于SSE指令集的程序设计简介
  7. Sqlserver2005附加数据库为只读的解决方法
  8. 广州项目实施步骤III_练习使用Keepalive保证HaProxy的高可用性
  9. linux useradd添加用户
  10. windows下搭建node.js及npm的工作环境
  11. C#版本websocket及时通信协议实现
  12. Mysql 库表
  13. Shell Scripts - 循环while,until,for
  14. https://stackoverflow.com/questions/10423781/sql-data-range-min-max-category
  15. inline-block间隙问题总结, ,style一个样式后面 多加了一个 分号; 导致 样式失效
  16. django的FBV和CBV的装饰器例子
  17. Go程序语言设计 (艾伦 A. A. 多诺万 著)
  18. SOA及分布式
  19. Linux+Redis实战教程_day02_2、redis简述及安装与启动
  20. HBase的Scan

热门文章

  1. JavaEE基础(四)
  2. 【转载】PostgreSQL分区表(Table Partitioning)应用
  3. 对js原型的理解
  4. C语言的数组名和对数组名取地址
  5. D类 E类地址
  6. 详解KMP算法
  7. hdu1016 Prime Ring Problem
  8. 如何在 Eclipse 中连接源码
  9. csharp通过dll调用opencv函数,图片作为参数
  10. Linux是如何管理内存的