OC学习 -- NSDate和NSDateFormatter
#pragma mark - NSDate 日期类
{
//获取当前的时间
NSDate *date = [NSDate date];
NSLog(@"%@",date);
//获取东八区的当前时间
NSDate *now = [NSDate dateWithTimeIntervalSinceNow:8 * 60 * 60];
NSLog(@"%@",now);
//获取东八区 昨天的时间
NSDate *yesterday = [NSDate dateWithTimeInterval:-24 * 60 * 60 sinceDate:now];
NSLog(@"%@",yesterday);
//获取时间间隔
//NSTimeInterval 其实就是double 只不过专门用来表示时间间隔 单位: 秒
NSTimeInterval timeInterVal = [yesterday timeIntervalSinceDate:now];
NSLog(@"%.2fh",timeInterVal*(-1)/60/60);
}
#pragma mark -- NSDateFormatter 日期格式类
NSDate *date = [NSDate date];
//1. 创建日期格式类的对象
NSDateFormatter *formatter = [[NSDateFormatter alloc]init];
//2 设置当前的时区
// [formatter setTimeZone:[NSTimeZone localTimeZone]];
//3 设置日期的风格
[formatter setDateStyle:(NSDateFormatterShortStyle)];
//4 设置时间的风格
[formatter setTimeStyle:(NSDateFormatterShortStyle)];
//5 使用设置好的格式 进行转化 通过Date转换成字符串
NSString *dateStr = [formatter stringFromDate:date];
NSLog(@"%@",dateStr);
//** 自定义日期格式对象
//1 创建日期格式对象
NSDateFormatter *myFormatter = [[NSDateFormatter alloc]init];
//自定义格式//yyyy代表年 MM代表月 hh(HH)代表时,十二小时制(24小时制) mm代表分钟 ss代表秒
[myFormatter setDateFormat:(@"GGGG yyyy年MM月dd日 hh:mm:ss OOOO")];
//3 转换
NSString *dateStr2 = [myFormatter stringFromDate:date];
NSLog(@"%@",dateStr2);
//** 使用日期格式类 将日期字符串转化为日期对象
//2008-08-08 20:08:08
NSString *dateStr3 = @"2008-08-08 20:08:08";
//1.创建日期格式对象
NSDateFormatter *formatter2 = [[NSDateFormatter alloc]init];
[formatter2 setDateFormat:@"yyyy-MM-dddd HH:mm:ss"];
//转化
NSDate *date1 = [formatter2 dateFromString:dateStr3];
NSLog(@"%@",date1);