A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始


一、NSDate初始化
[size=1em][backcolor=rgb(108, 226, 108) !important]
[color=white !important][size=1em]?

[size=1em]1

[size=1em]2

[size=1em]3

[size=1em]4

[size=1em]5

[size=1em]6

[size=1em]7

[size=1em]8

[size=1em]9

[size=1em]10

[size=1em]11

[size=1em][size=1em]// 获取当前日期
[size=1em]        NSDate *date = [NSDate date];
[size=1em]         
[size=1em]        // 打印结果: 当前时间 date = 2013-08-16 09:00:04 +0000
[size=1em]        NSLog(@"当前时间 date = %@",date);
[size=1em]         
[size=1em]        // 获取从某个日期开始往前或者往后多久的日期,此处60代表60秒,如果需要获取之前的,将60改为-60即可
[size=1em]        date = [[NSDate alloc] initWithTimeInterval:60 sinceDate:[NSDate date]];
[size=1em]         
[size=1em]        //打印结果:当前时间 往后60s的时间date = 2013-08-16 09:01:04 +0000
[size=1em]        NSLog(@"当前时间 往后60s的时间date = %@",date);



PS:测试时时间是下午5点,但是得到的当前时间却是上午9点,相差了8小时,是时区的问题
解决办法:
[size=1em][backcolor=rgb(108, 226, 108) !important]
[color=white !important][size=1em]?

[size=1em]1

[size=1em]2

[size=1em]3

[size=1em]4

[size=1em]5

[size=1em]6

[size=1em]7

[size=1em]8

[size=1em][size=1em]NSTimeZone *zone = [NSTimeZone systemTimeZone];
[size=1em]         
[size=1em]        NSInteger interval = [zone secondsFromGMTForDate: date];
[size=1em]         
[size=1em]        NSDate *localDate = [date  dateByAddingTimeInterval: interval];
[size=1em]         
[size=1em]        // 打印结果 正确当前时间 localDate = 2013-08-16 17:01:04 +0000
[size=1em]        NSLog(@"正确当前时间 localDate = %@",localDate);



二、NSDate与NSString的转换
[size=1em][backcolor=rgb(108, 226, 108) !important]
[color=white !important][size=1em]?

[size=1em]1

[size=1em]2

[size=1em]3

[size=1em]4

[size=1em]5

[size=1em]6

[size=1em]7

[size=1em]8

[size=1em]9

[size=1em]10

[size=1em]11

[size=1em]12

[size=1em]13

[size=1em]14

[size=1em]15

[size=1em]16

[size=1em]17

[size=1em]18

[size=1em]19

[size=1em]20

[size=1em]21

[size=1em]22

[size=1em]23

[size=1em]24

[size=1em]25

[size=1em]26

[size=1em]27

[size=1em][size=1em]/*---- NSDate与NSString----*/
[size=1em]        NSDateFormatter *dateFormatter =[[NSDateFormatter alloc] init];
[size=1em]         
[size=1em]        // 设置日期格式
[size=1em]        [dateFormatter setDateFormat:@"年月日 YYYY/mm/dd 时间 hh:mm:ss"];
[size=1em]         
[size=1em]        NSString *dateString = [dateFormatter stringFromDate:[NSDate date]];
[size=1em]         
[size=1em]        // 打印结果:dateString = 年月日 2013/10/16 时间 05:15:43
[size=1em]        NSLog(@"dateString = %@",dateString);
[size=1em]         
[size=1em]         
[size=1em]        // 设置日期格式
[size=1em]        [dateFormatter setDateFormat:@"YYYY-MM-dd"];
[size=1em]         
[size=1em]        NSString *year = [dateFormatter stringFromDate:[NSDate date]];
[size=1em]         
[size=1em]        // 打印结果:年月日 year = 2013-08-16
[size=1em]        NSLog(@"年月日 year = %@",year);
[size=1em]         
[size=1em]        // 设置时间格式
[size=1em]        [dateFormatter setDateFormat:@"hh:mm:ss"];
[size=1em]         
[size=1em]        NSString *time = [dateFormatter stringFromDate:[NSDate date]];
[size=1em]         
[size=1em]        // 打印结果:时间 time = 05:15:43
[size=1em]        NSLog(@"时间 time = %@",time);




0 个回复

您需要登录后才可以回帖 登录 | 加入黑马