#import <Foundation/Foundation.h>
#pragma mark 日期创建
void dateCreate() {
// date方法返回的就是当前时间(now)
NSDate *date = [NSDatedate];
// now: 21:09:40
// date: 21:09:50
date = [NSDatedateWithTimeIntervalSinceNow:10];
// 从1970-1-1 00:00:00开始
date = [NSDatedateWithTimeIntervalSince1970:10];
//随机返回一个比较遥远的未来时间
date = [NSDatedistantFuture];
//随机返回一个比较遥远的过去时间
date = [NSDatedistantPast];
NSLog(@"%@", date);
}
void dateUse() {
NSDate *date = [NSDatedate];
// 返回1970-1-1开始走过的毫秒数
NSTimeInterval interval = [date timeIntervalSince1970];
//跟其他时间进行对比
// [date timeIntervalSinceDate:<#(NSDate *)#>];
NSDate *date2 = [NSDatedate];
//返回比较早的那个时间
[dateearlierDate:date2];
//返回比较晚的那个时间
[datelaterDate:date2];
}
void dateFormat() {
NSDate *date = [NSDatedate];
// 2013-12-1 21:10:45
NSDateFormatter *formatter = [[NSDateFormatteralloc] init];
// HH是24进制,hh是12进制
formatter.dateFormat =@"yyyy-MM-dd HH:mm:ss";
// formatter.locale = [[[NSLocale alloc] initWithLocaleIdentifier:@"zh_CN"] autorelease];
NSString *string = [formatter stringFromDate:date];
NSLog(@"%@", string);
//返回的格林治时间
NSDate *date2 = [formatter dateFromString:@"2013-12-1 21:10:45"];
NSLog(@"%@", date2);
[formatterrelease];
}
int main(int argc,const char * argv[])
{
@autoreleasepool {
dateFormat();
}
return 0;
}
#pragma mark ---------NSSting 转NSDate NSDateFormatter------
NSDate *nowDate = [NSDate date];
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
//示例 [formatter setDateFormat:@"yyyy-MM-dd hh:mm:ss"];
[dateFormatter setDateFormat:@"YYYY-MM-dd HH:mm:ss "];
//将字符转换为日期
//NSDateFormatter这个类,主要作用是实现日期对象与字符串对象的转换
//绑定了什么格式,就必须给什么样的字符串,否则不匹配,打不出任何东西.
NSDate *date = [dateFormatter dateFromString:@"2015-04-01 11:40:33"];
NSLog(@"%@",date); //少八个小时 2015-04-01 03:40:33 +0000
//示例 NSString *dateString=[formatter stringFromDate: [NSDate date]]
//将日期转换为字符
NSString *dateString = [dateFormatter stringFromDate:nowDate];
NSLog(@"%@",dateString);