IOS --日期时间格式化

在开发IOS程序时,有时候需要将时间格式调整为自己希望的格式,这时候我们可以使用NSDateFormatter类来处理。

    //实例化一个NSDateFormatter对象
    NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
    //设置时间格式,这里设置自己需要的格式
    [dateFormatter setDateFormat:@"yyyy/MM/dd HH:m:s"];
    //用[NSDate date]来获取系统当前时间
    NSString *currentDateStr = [dateFormatter stringFromDate:[NSDate date]];
    NSLog(@"系统当前时间:%@",currentDateStr);

    /****************

    符号说明

     (:)  时间分隔符

     例如:  14:07:12

     

     (/)  日期分隔符

     例如:  2015/02/10

     

     (%)  无论尾随什么字符,随后字符都应该以单字母格式读取

     

     d 将日显示为不带 前导零 的数字

     例如:yyyy/MM/d  显示为 2015/02/8

     dd 将日显示为带 前导零 的数字

     例如:yyyy/MM/dd 显示为 2015/02/08

     

     EEE 将日显示为缩写形式

     例如:yyyy/MM/EEE 2015/02/Tue

     EEEE 将日显示为全名

     例如:yyyy/MM/EEEE 2015/02/Tuesday


     M 将月份显示为不带 前导零 的数字

     例如:yyyy/M/dd  显示为 2015/2/08

     MM 将月份显示为带 前导零 的数字

     例如:yyyy/MM/dd  显示为 2015/02/08

     MMM 将月份显示为缩写形式

     例如:yyyy/MMM/dd  显示为 2015/Feb/08

     MMMM 将月份显示为完整月份名形式

     例如:yyyy/MMMM/dd  显示为 2015/February/08

     

     

     gg 显示时代/纪元字符串 (例如 A.D.)

     

     y 将年份显示为不带 前导零 的数字,

     yy 以带前导零的两位数字格式显示年份

     例如:yy/MM/dd 显示为 15/02/10

     yyy 以四位数字格式显示年份

     yyyy 以四位数字格式显示年份

     

     h 使用12小时制将小时显示为不带 前导零 的数字

     例如: h:mm:ss 显示为 2:37:19

     hh 使用12小时制将小时显示为带 前导零 的数字

     例如: hh:mm:ss 显示为 02:39:08

     HH 使用24小时制将小时显示为不带 前导零 的数字

     例如: HH:mm:ss 显示为 14:42:32

     

     m 将分钟显示为不带前导零的数字

     例如: HH:m:ss 显示为 14:5:30

     mm 将分钟显示为带前导零的数字

     例如: HH:mm:ss 显示为 14:05:45

     

     s 将秒显示为不带前导零的数字

     HH:m:s  显示为 14:48:6

     ss 将秒显示为带前导零的数字

     HH:m:ss 显示为 14:48:06

     

    ****************/


    //IOS NSDate 日期操作总结

    //1.当前时间创建NSDate

    NSDate *nowDate = [NSDate date];

    NSLog(@"myDate:%@",nowDate);

    

    //2.从现在开始的24小时

    NSTimeInterval secondsPerDay = 24*60*60;

    NSDate *tomorrow = [NSDate dateWithTimeIntervalSinceNow:secondsPerDay];

    NSLog(@"tomorrow:%@",tomorrow);

    

    //3.比较日期

    BOOL sameDate = [nowDate isEqualToDate:tomorrow];

    //%u 无符号整型格式

    NSLog(@"sameDate:%u",sameDate);

    //3.1 获取较早日期

    NSDate *earlierDate = [tomorrow earlierDate:nowDate];

    NSLog(@"较早日期为:%@",earlierDate);

    //3.2 获取较晚日期

    NSDate *laterDate = [tomorrow laterDate:nowDate];

    NSLog(@"较晚的日期:%@",laterDate);

    

    //4.两个日期之间相隔多少秒

    NSTimeInterval secondsBetweenDates = [tomorrow timeIntervalSinceDate:nowDate];

    NSLog(@"两个日期之间相隔多少秒:%f",secondsBetweenDates);


//NSDate与NSDateFormatter的相关用法

//NSDateFormatter配合NSDate与NSString之间的转换,有如下两个方法

//NSDate转NSString,系统自带的方法

-(NSString *)stringFromDate:(NSDate *)date;

//NSString转NSDate,系统自带的方法

-(NSDate *)dateFromString:(NSString *)string;




你可能感兴趣的:(IOS --日期时间格式化)