您的位置:首页 > 移动开发 > Objective-C

object-C NSDate

2015-11-03 16:02 369 查看
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);
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: