C 获取NSDate对象的年月日时分秒 NSCalender的使用

/*

现在网上大多的获取NSDate年月日时分秒的方法,都在mac os 10.10被苹果公司标记成不建议使用了.

查了好久,终于找到了一个苹果公司推荐使用方法, 以下内容分享给大家

*/

/*当前时间对象[dateNow]*/NSDate *dateNow = [NSDate date];/*日历类[calendar]注意: 一定要用[NSCalendar currentCalendar]初始化,如果用[[NSCalendar alloc] init]初始化, 获取的时间会是随机式.*/NSCalendar *calendar = [NSCalendar currentCalendar];/*变量*/NSInteger year;//年NSInteger month;//月NSInteger day;//日NSInteger hour;//时NSInteger minute;//分NSInteger second;//秒NSInteger nanosecond; //10^-9秒/*使用[calendar]对象从[dateNow]中获取 [hour] [minute] [second] [nanosecond]注意: '&'是取地址符, 把变量的"地址"传过去,函数会把相应的值写入这个"地址", 我们的变量里面就存入相应的值了.*/[calendar getHour:&hour minute:&minute second:&second nanosecond:&nanosecond fromDate:dateNow];/*使用[calendar]对象从[dateNow]中获取[year],[month],[day].注意: [Era]是公元的意思, 现在的日期都会为1.由于没有文档介绍这个值的含义, 使用的需求度也不高, 暂时先不研究这个.*/[calendar getEra:nil year:&year month:&month day:&day fromDate:dateNow];/*打印获取的值注意: '%d'是32位整数.'%ld'是64位整数.'%2ld'是64位整数, 如果不足2位则在左边补充空格.'%02ld'是64位整数, 如果不足2位则在左边补充'0'.输出结果: 2015-03-26 13:44:34.582 MyCake[3020:106505] 2015-03-26 13:44:34.582结果说明: 对比一下, 系统输出的时间, 和你的时间是不是一样的.而且毫米数字都一样, 说明这种写法效率非常高.*/NSLog(@"%04ld-%02ld-%02ld %02ld:%02ld:%02ld.%03ld", year, month, day, hour, minute, second, nanosecond/1000000);

,旅游不在乎终点,而是在意途中的人和事还有那些美好的记忆和景色。

C 获取NSDate对象的年月日时分秒 NSCalender的使用

相关文章:

你感兴趣的文章:

标签云: