NSDate和NSDateFormatter

定义一个当前日期的NSDate对象

NSDate *currentDate = [NSDate date];

NSDate常用方法

  • 以已有NSDate对象实例为基准,定义一个表示一小时后的NSDate对象:
[NSDate dateWithTimeInterval:3600 sinceDate:currentDate] -> NSDate

以下统一写成消息闭包的形式,单位默认为秒,负号则表示早于目标日期。

  • 以当前时间为基准,定义一个表示一小时前的NSDate对象:
[NSDate dateWithTimeIntervalSinceNow:-3600] -> NSDate
  • 获取目标日期到Unix元年的秒数:
[targetDate timeIntervalSince1970] -> float

这么直白的方法名还是第一次见

  • 获取目标日期到当前日期的秒数:
[targetDate timeIntervalSinceNow] -> float
  • 判断两个日期是否相等:
[date1 isEqualToDate:date2] -> BOOL

NSDateFormatter的使用

  • 初始化:
NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
  • 设置日期显示风格
[formatter setDateStyle:NSDateFormatterFullStyle];
  • 设置时间显示风格
[formatter setTimeStyle:NSDateFormatterMediumStyle];
  • 设置显示语言为简体中文
[formatter setLocale:[[NSLocale alloc] initWithLocaleIdentifier:@"zh-CN"]];
  • 格式化日期和时间显示
[formatter setDateFormat:@"yyyy-MM-dd HH:mm:ss"];
  • NSDate转NSString
[formatter stringFromDate:currentDate] -> NSString

也可以用含有日期格式的字符串生成NSDate对象:[formatter dateFromString:dateString] -> NSDate
但日期字符串的格式必须与使用的NSDateFormatter对象通过setDateFormat方法设置的日期格式一致。

原文地址:https://www.cnblogs.com/ybn-juan/p/12267448.html

时间: 2024-10-12 13:10:26

NSDate和NSDateFormatter的相关文章

【学习ios之路:Objective-C】block块语法.NSDate和NSDateFormatter

一.Block块语法 块语法:可以在函数内部定义匿名函数 格式: ^返回值类型(参数列表){函数体}其中返回值类型可以省略 block简单练习: ①.求两个数的最大值 //int (^)(int,int)//block类型 int (^max)(int,int) = ^(int a,int b) {//block的实现体 return a > b ? a : b; }; int value = max(4,6);          printf("%d",value); ②.将一

NSDate 和 NSDateFormatter 使用技巧

//1.显示当前时间 NSDate *date = [NSDate date];//获取当前的时间 NSDateFormatter *formatter = [[NSDateFormatter alloc]init]; [formatter setDateFormat:@"yyyy-MM-dd a HH:mm:ss EEEE"]; NSLog(@"date = %@",[formatter stringFromDate:date]); //输出结果是  date =

Objective-C学习篇10—NSDate与NSDateFormatter

NSDate NSDate 时间类,继承自NSObject,其对象表示一个时间点 NSDate *date = [NSDate date]; NSLog(@"date = %@", date); 2015-12-04 19:08:00.624 OCNSDate[2955:309612] date = 2015-12-04 11:08:00 +0000 打印显示的是格里尼治时间 年-月-日 时:分:秒 + 时区 1. 得到一个距离当前时间间隔时间点的创建方法  dateWithTimeI

关于NSDate和NSDateFormatter的几个常用方法

/** *  NSDate常见类方法 */ // 获得当前时间 NSDate *date1 = [NSDate date];   // 类方法 // NSDate *date1 = [[NSDate alloc] init];   // 初始化方法 NSLog(@"%@", date1); // 在当前日期基础上加上120秒(在OC中时间大多数都是秒) NSDate *date2 = [NSDate dateWithTimeIntervalSinceNow:8 * 60 * 60]; 

【IOS学习笔记】Swift iOS 日期操作:NSDate、NSDateFormatter(转载)

转载自:http://blog.csdn.net/jinnchang/article/details/44592801 1.日期(NSDate) [objc] view plaincopy // 1.初始化 // 初始化一个当前时刻对象 var now = NSDate() // 初始化一个明天当前时刻对象 var tomorrow = NSDate(timeIntervalSinceNow: 24*60*60) // 初始化一个昨天当前时刻对象 var yestoday = NSDate(ti

NSDate(NSCalendar,NSDateComponents,NSDateFormatter)

-1 NSString 转成 NSDate NSString *time = @"2014-05-18 09:24:40"; NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]; dateFormatter.dateFormat = @"yyyy-MM-dd HH:mm:ss"; NSDate *date = [dateFormatter dateFromString:time]; NSLo

NSDate NSDateFormatter

1.0 获取系统时间和年月日 计算年龄 //获得系统时间 NSDate *  senddate=[NSDate date]; NSDateFormatter  *dateformatter=[[NSDateFormatter alloc] init]; [dateformatter setDateFormat:@"HH:mm"]; NSString *  locationString=[dateformatter stringFromDate:senddate]; //[datefor

iOS开发-OC篇-NSDate

今天总结一下OC中NSDate的一些简单的用法,注意可不是NSData哦! NSDate的使用 1> NSDate初始化方法 //获取当前时间 NSDate * date = [NSDate date]; //返回以当前时间为基准,然后过了secs秒的时间 [NSDate dateWithTimeIntervalSinceNow:60 * 60 * 24]; //返回以lastDate为基准,然后过了secs秒的时间 [NSDate dateWithTimeInterval:60 * 60 *

supersr--时间显示逻辑-->NSDate+NSCalendar

- (NSString *)created_at{ //    从后台返回的字符串格式:Mon Aug 03 09:17:31 +0800 2014, //NSDateFormatter可以把NSDate转成字符串,也可以把字符串转成NSDate //初始化一个时间格式化器 NSDateFormatter *formatter = [[NSDateFormatter alloc] init]; //指定时间格式化字符串-->是一个什么样的格式 formatter.dateFormat = @&quo