Objective_C_07

15/12/14
//  Objective_C_07

#import <Foundation/Foundation.h>
int main(int argc, const char * argv[]) {
//    NSDate  iOS中代表时间的类(注意:不要写成NSData)
//    当前时间
    NSDate *nowDate = [NSDate date];//NSDate存储的是世界标准时(UTC),输出时需要根据时区转换为本地时间
    NSLog(@"0时区当前时间:%@",nowDate);
    
//    时间间隔是按秒计算的,我们所在的区是东八区,转化成秒8*60*60
//                                            8-东八区 60-分 60-秒
    NSDate *nowDate2 = [nowDate dateByAddingTimeInterval:8*60*60];
    NSLog(@"东八区当前时间:%@",nowDate2);
//    默认0时区的当前时间
    NSDate *tomrrowDate = [[NSDate alloc] initWithTimeIntervalSinceNow:60*60*(24+8)];//60-分  60-秒 24-天 8-东八区
    NSLog(@"明天的东八区这个时候:%@",tomrrowDate);
    NSDate *yesterDay = [[NSDate alloc] initWithTimeIntervalSinceNow:-1*60*60*(24-8)];
    NSLog(@"昨天的东八区这个时候:%@",yesterDay);
//    在自己指定的时间基础上加时间
    NSDate *date2 = [NSDate dateWithTimeInterval:60*60*2 sinceDate:nowDate2];
    NSLog(@"东八区当前时间快进两小时:%@",date2);
//    昨天的这个时间
    NSDate *yesterDay1 = [[NSDate alloc] initWithTimeInterval:-24*3600 sinceDate:nowDate2];
    NSLog(@"参考(东八区当前时间:%@)的前一天:%@",nowDate2,yesterDay1);
    NSDate *yesterDay2 = [[NSDate alloc] initWithTimeIntervalSince1970:60*60*8];
    NSLog(@"1970年的1月1日8点:%@",yesterDay2);
//   昨天和明天的时间间隔
    NSTimeInterval times = [tomrrowDate timeIntervalSinceDate:yesterDay];
    NSLog(@"时间间隔%.f小时",times/3600);//转换为以小时为单位
    
    NSTimeInterval timeYY = [nowDate2 timeIntervalSince1970];
    NSLog(@"距离1970年已经%.f年",timeYY/365/24/3600);//转换为以年为单位
    
//    NSDateFormatter  时间格式(时间字符串和设置的格式要保持一致)
    NSDateFormatter *formatter1 = [[NSDateFormatter alloc] init];
//    1.设置一个时间格式(系统的样式)
//    [formatter1 setDateStyle:NSDateFormatterLongStyle];
//    月份 和 分 进行区分
    [formatter1 setDateFormat:@"yyyy年MM🈷️dd日 HH:mm:ss"];
//    按照格式进行输出(字符串)
    NSDate *day = [[NSDate alloc] init];
    NSLog(@"0时区:%@",day);//0时区
    NSString *strDate = [formatter1 stringFromDate:[NSDate date]];
    //setDateFormat 自带属性,自动回去系统时间
    NSLog(@"%@",strDate);
    
//    将一个字符串(日期)转化为date
    NSDate *dateStr = [formatter1 dateFromString:strDate];
    NSLog(@"%@",dateStr);//将一个字符串(日期)转化为date时会转化为0时区
    NSDateFormatter *formatter2 = [[NSDateFormatter alloc] init];
    [formatter2 setDateFormat:@"YYYYMMddHHmmss"];//格式与字符串相同
    NSString *as =@"20140402142850";//默认为当前地点的时间
    NSDate *dateStr1 = [formatter2 dateFromString:as];
    NSLog(@"%@",dateStr1);
    return 0;
}

posted @ 2015-12-19 14:43  DH_Fantasy  阅读(59)  评论(0)    收藏  举报