object-C NSDate

NSData

        NSString *str=@"12345fdas ";
        NSData *data=[str dataUsingEncoding:NSUTF8StringEncoding];//讲一个字符串转换为date。    NSUTF8StringEncoding代表编码格式
        NSString *str1 =[[NSString alloc]initWithData:data encoding:NSUTF8StringEncoding ];//将date转换为字符串

  NSLog(@"%@",str1);
        NSLog(@"%@",data);//输出date
        NSLog(@"%zi",data.length);
//        NSData *data1=[NSData dataWithContentsOfURL:[NSURL URLWithString:@"http://www.iconpng.com/png/ios7-premium/tree11.png"]];//获取网路数据
//        NSLog(@"%@",data1);
        NSMutableData *data2=[NSMutableData data];//创建一个空的数据
        [data2 appendData:data];
        NSLog(@"+++++%@",data2);//拼接date

NSDate常用方法

 

       NSDate *date=[NSDate date];//获取当前的时间
             NSLog(@"%@",date);
NSDate
*date1=[NSDate dateWithTimeIntervalSinceNow:-60];// 返回以当前时间为基准,然后过了60秒的时间 NSLog(@"----%@",date1);
NSDate
*date2=[NSDate dateWithTimeIntervalSince1970:1000];//从1970年开始,经过了若干时间秒 NSLog(@"%@",date2);
NSDate
*date3=[date2 dateByAddingTimeInterval:60];//以某个时间为标准加上若干秒的时间 NSLog(@"%@",date3);
NSTimeInterval intervel
=[date timeIntervalSince1970];//从1970年到某一时间的秒数
NSLog(@"%lf",intervel);
NSTimeInterval intervel1=[date timeIntervalSinceDate:date];//计数两个时间的间隔(秒)
NSLog(@"%lf",intervel1);
NSTimeInterval intervel2=[date1 timeIntervalSinceNow]; NSLog(@"%lf",intervel2);
NSDate
*date4=[date laterDate:date2];//获取两个时间较晚的(距离1970年较长的) NSLog(@"%@",date4);
      NSDate *date=[NSDate date];
//日期时间格式化对象
NSDateFormatter *formater=[[NSDateFormatter alloc]init];
//设置日期显示格式 [formater setDateFormat:@"yyyy--MM--dd HH:mm:ss"];//格式化之后误差就不存在了。//小写是12小时制,大写24小时制
//格式化日期时间对象(把日期对象转换成字符串) NSString *str=[formater stringFromDate:date];//将日期装换为字符串
NSLog(@"%@",str);
        //解决字符串转换为时间出现的时差
      NSString *str=@"2015-11-3 10:20:00";
        NSDateFormatter *foma=[[NSDateFormatter alloc]init];
        [foma setDateFormat:@"yyyy-MM-dd hh:mm:ss"];
        NSDate *date=[foma dateFromString:str];
        //第一种
      //和格林尼治时间差
        NSInteger timeoff=[[NSTimeZone systemTimeZone]secondsFromGMT];
       //时差转化       
     date=[date dateByAddingTimeInterval:timeoff];
        NSLog(@"%@",date);//第二种
        //将时区设置为UTC国际校准时间
        [foma setTimeZone:[NSTimeZone timeZoneWithName:@"UTC"]];
     NSDate *date1=[foma dateFromString:str];
         NSLog(@"%@",date1);
     //第三种   
        [foma setTimeZone:[NSTimeZone timeZoneForSecondsFromGMT:0]];
        
        NSDate *date1=[foma dateFromString:str];
        NSLog(@"%@",date1);
原文地址:https://www.cnblogs.com/wyhwyh2114/p/4933469.html