NSDate/NSData

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/yahibo/article/details/49718399

NSDate/NSData中常用的方法


        NSString *str = @"1234abcd" ;
       
NSData *data = [str dataUsingEncoding : NSUTF8StringEncoding ]; // 将字符转换成 dataNSUTF8StringEncoding 为编码格式 
       
NSString *str1 = [[ NSString alloc ] initWithData :data encoding : NSUTF8StringEncoding ]; // data 转换成字符
       
NSLog ( @"%@" ,str1);
       
       
NSLog ( @"%@" ,data);
       
NSLog ( @"%zi" ,data. length ); //data 的长度
       
NSData *data1 = [ NSData dataWithContentsOfURL :[ NSURL URLWithString : @"http://image.baidu.com" ]]; // 获取网络数据
       
//NSLog(@"%@",data1);
       
  
        NSMutableData *data2 = [ NSMutableData data ]; // 创建一个空的数据
        [data2 appendData:data];




       
       
//1. 获取当前时间
       
NSDate *date1 = [ NSDate date ];
       
NSLog ( @"1. %@" ,date1);
       
       
//2. 以当前时间为基准 n 秒后的时间
       
NSDate *date2 = [ NSDate dateWithTimeIntervalSinceNow :60];
       
NSLog ( @"2. %@" ,date2);
       
       
//3. 1970 年为基准 n 秒后的时间
       
NSDate *date3 = [ NSDate dateWithTimeIntervalSince1970 :24*60*60];
       
NSLog ( @"3. %@" ,date3);
       
       
//4. 在某一时间上加过 n 秒后的时间
       
NSDate *afterTime = [date1 dateByAddingTimeInterval :60];
       
NSLog ( @"4. %@" ,afterTime);
       
       
//5. 获取当前时间距离 1970 年的秒数
       
NSTimeInterval time = [[ NSDate date ] timeIntervalSince1970 ];
       
NSLog ( @"5. %lf" ,time);
       
NSTimeInterval time1 = [[ NSDate dateWithTimeIntervalSinceNow :60] timeIntervalSince1970 ];
       
NSLog ( @"5. %lf" ,time1);
       
       
//6. 返回给定时间与当前时间的时间差单位秒
       
NSTimeInterval time2 = [date1 timeIntervalSinceNow ];
       
NSLog ( @"6. %lf" ,time2);
       
NSTimeInterval time3 = [date2 timeIntervalSinceNow ];
       
NSLog ( @"6. %lf" ,time3);
       
       
//7. 获取两日期之间的时间差
       
NSTimeInterval time4 = [date2 timeIntervalSinceDate :date1];
       
NSLog ( @"7. %lf" ,time4);
       
       
//8. 获取两个日期中距 1970 最远 ( 最近 ) 的日期
       
NSDate *laterOne = [date1 laterDate :date2];
       
NSLog ( @"8. %@" ,laterOne);
       
NSDate *earlyOne= [date1 earlierDate :date2];
       
NSLog ( @"8. %@" ,earlyOne);
       
        //9. 日期时间格式化对象
        NSDateFormatter *foma = [[ NSDateFormatter alloc ] init ];
        [foma setDateFormat:@"yyyy-MM-dd HH:mm:ss"];
        NSDateFormatter *dateFormatter = [ NSDateFormatter new ];
        [dateFormatter
setDateFormat : @"yyyy MM dd HH:mm:ss" ];
       
NSLog ( @"9. %@" ,[dateFormatter stringFromDate :date1]);
       
       
//10. 把日期格式的字符串转换成日期对象
       
NSString *myDateTimeStr = @"2015.11.3 12:12:12" ;
       
NSDateFormatter *formatter = [ NSDateFormatter new ];
        [formatter
setDateFormat : @"yyyy-MM-dd HH:mm:ss" ];
       
NSDate *newDate = [formatter dateFromString :myDateTimeStr];
       
NSLog ( @"10. %@" ,[formatter stringFromDate :newDate]);
       
       
//11. 系统时区
       
NSTimeZone *zone = [ NSTimeZone systemTimeZone ];
       
NSLog ( @"11. %@" ,zone);
       
//12. 系统时区缩写
       
NSString *str = [zone abbreviation ];
       
NSLog ( @"12. %@" ,str);
       
//13. 当地时区
       
NSTimeZone *localTimeZone = [ NSTimeZone localTimeZone ];
       
NSLog ( @"13. %@" ,localTimeZone);

       
//14. 和格林尼治时间差
       
NSInteger timeOff = [zone secondsFromGMT ];
       
NSLog ( @"14. %ld" ,( long )timeOff);
       
       
//15. 时差转换
       
NSDate *timeOffDate = [date1 dateByAddingTimeInterval :[[ NSTimeZone systemTimeZone ] secondsFromGMT ]];
        NSLog(@"15. %@",timeOffDate);


//时差转换
        //1.
       
NSString *str1 = @"2015-11-11 11:11:11" ;
       
NSDate *date1 = [ NSDate date ];
       
NSDateFormatter *formatter = [[ NSDateFormatter alloc ] init ];
        [formatter
setDateFormat : @"yyyy/MM/dd HH:mm:ss" ];
       
NSDate *newDate = [formatter dateFromString :str1];
       
NSLog ( @"%@" ,[formatter stringFromDate :newDate]);
       
NSLog ( @"%@" ,newDate);
       
//2.
       
NSDate *d = [date1 dateByAddingTimeInterval :[[ NSTimeZone systemTimeZone ] secondsFromGMT ]];
       
NSLog ( @"%@" ,d);
       
//3.
       
NSDateFormatter *fm = [[ NSDateFormatter alloc ] init ];
        [fm
setTimeZone :[ NSTimeZone timeZoneForSecondsFromGMT :0]];
        NSLog ( @"%@" ,[fm stringFromDate :[ NSDate date ]]);

猜你喜欢

转载自blog.csdn.net/yahibo/article/details/49718399