日历(NSCalendar) 与日期组件(NSDateCompo

2016-07-19  本文已影响276人  nalis风

日历(NSCalendar) 与日期组件(NSDateComponents)

1.(NSDateCOmponents *)components: fromDate:从NSDate提取年、月、日、时、分、秒个时间字段的信息

2.dateFromComponents:(NSDateComponents*) cpmps: 使用comps对象包含的年、月、日、是、分、秒个时间段字段的信息创建NSDate

NSDateComponents,专门用于封装年、月、日、时、分、秒。只包含了 year/mpnth/date/day/hour/minute second week weekday等个字段的setter和getter方法

NSDate 对象中分开获取各时间字段数值步骤:

1、创建NSCalendar

2.调用NSDateComponentsfromDate;返回一个NSDateComponents对象

3.调用NSDateComponents对象的getter方法来获取个时间段字段的数值

使用各时间字段的数值初始化NSDate:

1,创建NSCalendar对象

2.穿件一个NSDateCompinents对象,调用该对象的setter方法来设置个时间字段的值

3.调用NSCalendar的dateFromComponents:(NSDateComponents*)初始化NSDate对象,该方法将返回一个NSDate对象

NSCalendar *gregorian=[[NSCalendar alloc]

initWithCalendarIdentifier:NSGregorianCalendar];

//定义一个时间字段的旗标

unsigned unitFlags=NSYearCalendarUnit|

NSMonthCalendarUnit |NSDayCalendarUnit|

NSHourCalendarUnit|NSMinuteCalendarUnit|

NSSecondCalendarUnit |NSWeekdayCalendarUnit;

//获取不同时间字段的信息

NSDate* dt=[[NSDate date];

NSDateComponents* comp=[gregorian components:unitFlags fromDate:dt];

//获取各时间字段的数值

comp.year//年

comp.weekday//星期

NSDateComponents* comp2=[[NSDateComponents alloc]init];//设置

comp2.year=2014;

comp2.day=12;

comp2.month=3;

NSDate* date=[gregorian dateFromComponents:comp2];//利用components来重置NSDate

NSLog(@"%@",date);

上一篇下一篇

猜你喜欢

热点阅读