Objective-C NSDate
最近学习的都是一些方法, 这些方法我也确实没有时间一个一个的去研究,主要是现在每天的时间都很紧迫,只能把每个类都有哪些方法陈列出来,并且写出使用的基本方法
大家也是混个脸熟, 起码后续在见到的时候不会太陌生,一旦遇到了,即使不会用也没关系的,可以在翻翻笔记, 查找使用方法. 我个人更倾向于大家能够上手敲代码,敲一遍要比看
十遍理论来的更实在,所以可能这里并没有解释太多,还希望看到此博客的朋友们不会太嫌弃.
// NSDate 使用的date方法获取的时间为0时区的时间
NSDate *date = [NSDate date];
NSLog(@"%@",date);
// 如果想获取你本地的时间,那么需要加上时差,中国北京是东八区,时差为8小时
NSDate *now = [NSDate dateWithTimeIntervalSinceNow:8 * 60 * 60];
NSLog(@"%@",now);
// 如果想获取昨天此时的时间,
NSDate *yesterday = [NSDate dateWithTimeIntervalSinceNow:8 * 60 * 60 - 24 * 60 * 60];
NSLog(@"%@",yesterday);
//获取明天此时的时间
NSDate *tomorrow = [[NSDate alloc] initWithTimeIntervalSinceNow:8 * 60 * 60 + 24 * 60 * 60];
NSLog(@"%@",tomorrow);
//获取两个时间的间隔 使用timeIntervalSinceDate: 他的两端是昨天 和 后天的时间
NSTimeInterval interval = [tomorrow timeIntervalSinceDate:yesterday];
NSLog(@"%.2f",interval / 3600);
NSDate *date1 = [NSDate date];
NSLog(@"%@",date1);
//NSDateFormatter 日期格式类 可以控制日期输出的格式
NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
//设置时区 我们是东八区 所以用settimezone
[formatter setTimeZone:[NSTimeZone localTimeZone]];
//设置日期格式
[formatter setDateStyle:NSDateFormatterLongStyle];
//设置时间格式
[formatter setTimeStyle:NSDateFormatterMediumStyle];
//通过创建的日期格式 将NSDate 转化为 NSString
NSString *dateStr = [formatter stringFromDate:date];
NSLog(@"%@",dateStr);
#pragma mark - 自定义日期格式类
NSDate *date = [NSDate date];
//创建格式类对象
NSDateFormatter *myFormatter = [[NSDateFormatter alloc] init];
//设置时区
[myFormatter setTimeZone:[NSTimeZone localTimeZone]];
//设置日期,时间格式
//yyyy代表year MM代表Month dd代表date HH/hh代表hour H(24进制) h(12进制) mm代表munites ss代表seconds
[myFormatter setDateFormat:@"VVVV:GGGG后:yyyy年MM月dd日hh:mm:ss EEEE OOOO LLLL QQQQ UUUU "];
//转化
NSString *dateStr = [myFormatter stringFromDate:date];
NSLog(@"%@",dateStr);
//将日期字符串转化为日期对象
//在设置日期格式串的时候,必须要和字符串的形式一模一样,不然就会显示null.
//@"2015年1月30日 11:47"
//1.创建日期格式类对象
NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
//2.设置时区
[formatter setTimeZone:[NSTimeZone localTimeZone]];
//3.设置日期,时间格式
[formatter setDateFormat:@"yyyy年MM月dd日 hh:mm"];
//4.转化
NSDate *date1 = [[formatter dateFromString:@"2015年1月30日 11:47"]initWithTimeIntervalSinceNow:+8*3600];
NSLog(@"%@",date1);
//1.创建日期格式类对象
NSDateFormatter *formatter1 = [[NSDateFormatter alloc] init];
//2.设置格式
[formatter1 setDateFormat:@"yyyyMMddhhmmss"];
//3.转化
NSDate *date1 = [formatter1 dateFromString:@"20150131023108"];
NSLog(@"%@",date1);
}
return 0;
}