年年有"余"

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 2548|回复: 0

NSDate/NSDateFormatter的相关用法

[复制链接]
  • TA的每日心情
    奋斗
    2022-12-13 21:26
  • 签到天数: 371 天

    [LV.9]以坛为家II

    发表于 2014-12-31 10:10:28 | 显示全部楼层 |阅读模式
    1.NSDateFormatter配合NSDate与NSString之间的转化NSDateFormatter有下面2个方法:
    [Objective-C] 纯文本查看 复制代码
    - (NSString *)stringFromDate:(NSDate *)date;//NSDate转NSString
    - (NSDate *)dateFromString:(NSString *)string;//NSString转NSDate

    e.g.
    [Objective-C] 纯文本查看 复制代码
    NSString *dateString=@"1900-01-01";
    NSDateFormatter *dateFormatter=[[NSDateFormatter alloc]init];
    [dateFormatter setDateFormat:@"yyyy-MM-dd"];
    NSDate *date=[dateFormatter dateFromString:dateString];
    [dateFormatter release];

    NSString转NSDate与上面类似
    [Objective-C] 纯文本查看 复制代码
    NSString *dateString=[dateFormatter dateFromString:[NSDate date]];
    2.NSDateFormatter 的一些格式介绍
    [Objective-C] 纯文本查看 复制代码
    [dateFormatter setDateFormat:@"yyyy年MM月dd日#EEEE"];//EEEE为星期几,EEE为周几
    [dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss"];
    [dateFormatter setDateFormat:@"yyyy年MMMMd日"];//MMMM 为xx月,一个d可以省去01日前的0
    3.NSString转NSDate少一天的解决办法用下面这种格式化方式
    [Objective-C] 纯文本查看 复制代码
    [dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss"]; 
    
    NSCalendar *calendar = [NSCalendar currentCalendar];
    NSDateComponents *components = [calendar components:(NSDayCalendarUnit | NSMonthCalendarUnit |                                  NSYearCalendarUnit) fromDate:[NSDate date]];
    NSDate *todayDate = [calendar dateFromComponents:components];


    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    手机版|小黑屋|Archiver|iOS开发笔记 ( 湘ICP备14010846号 )

    GMT+8, 2024-4-29 10:39 , Processed in 0.048099 second(s), 18 queries .

    Powered by Discuz! X3.4

    Copyright © 2001-2021, Tencent Cloud.

    快速回复 返回顶部 返回列表