您的位置:首页 > 其它

NSDate,NSCalendar

2015-06-03 10:42 381 查看
NSLog(@"%@",[NSDate date]);


打印结果:

2015-06-30 08:42:14 +0000

把它转换成2015年6月30日 8时42分14秒 怎么转?

*********************** 时间转字符串*************************
1     NSDate *now = [NSDate date];
NSDateFormatter *format = [[NSDateFormatter alloc]init];
format.dateFormat = @"yyyy-MM-dd HH:mm:ss";
NSString *nowString = [format stringFromDate:now];
NSDate *newTime = [NSDate date];
CGFloat delta = [newTime timeIntervalSinceDate:now];

//NSLog(@"%@,%f",nowString,delta);
//打印结果:

2016-03-30 18:09:18,0.001518



********************字符串转时间*******************************
NSString *str = @"2015-03-30 19:33:00";
NSDate *nowDate = [format dateFromString:str];
//NSLog(@"%@",nowDate);

**********************日历******************************************
NSCalendar *calendar = [NSCalendar currentCalendar];
//NSLog(@"%@",calendar);
NSCalendarUnit unit = NSCalendarUnitYear | NSCalendarUnitMonth | NSCalendarUnitDay | NSCalendarUnitHour | NSCalendarUnitMinute | NSCalendarUnitSecond;
NSDateComponents *components = [calendar components:unit fromDate:now toDate:nowDate options:0];
NSLog(@"%@,%zd,%zd,%zd",components,components.year,components.month,components.day);
打印结果:

<NSDateComponents: 0x7b791630>

Calendar Year: 0

Month: -11

Day: -30

Hour: -22

Minute: -36

Second: -18,0,-11,-30

**************************获取时间对应的年月等,分钟,秒什么的类似**********************************

NSInteger year = [calendar component:NSCalendarUnitYear fromDate:nowDate];
NSInteger month = [calendar component:NSCalendarUnitMonth fromDate:nowDate];

NSLog(@"%zd,%zd",year,month);
打印结果:

2015,3

NSCalendar *calendar = [NSCalendar currentCalendar];
NSString *oldTime = @"2014-12-31 23:59:59";
NSString *newTime = @"2015-01-01 00:00:01";
NSDateFormatter *format = [[NSDateFormatter alloc]init];
format.dateFormat = @"yyyy-MM-dd HH:mm:ss";
NSDate *oldDate = [format dateFromString:oldTime];
NSDate *newDate = [format dateFromString:newTime];

NSCalendarUnit unit = NSCalendarUnitYear | NSCalendarUnitMonth | NSCalendarUnitDay | NSCalendarUnitHour | NSCalendarUnitMinute | NSCalendarUnitSecond;
NSDateComponents *comp = [calendar components:unit fromDate:oldDate toDate:newDate options:0];

NSLog(@"%@",comp);


打印结果:

<NSDateComponents: 0x79e9d9c0>

Calendar Year: 0

Month: 0

Day: 0

Hour: 0

Minute: 0

Second: 2
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: