美文网首页
iOS官方文档 Foundation篇---NSDateComp

iOS官方文档 Foundation篇---NSDateComp

作者: qianfei | 来源:发表于2019-05-27 11:13 被阅读0次

    NSDateComponents

    一个对象,用于指定要在日历系统和时区中评估的单位(例如年,月,日,小时和分钟)的日期或时间。

    NSDateComponents以可扩展的,面向对象的方式封装日期的组件。它通过提供构成日期和时间的组成部件来指定日期:小时,分钟,秒,日,月,年等。还可以使用它来指定持续时间,例如,5小时16分钟。一个对象不要求定义所有组件字段。当创建一个新的NSDateComponents实例时,将日期组件设置为NSDateComponentUndefined。NSDateComponents的实例无法找出除初始化日期的信息之外的关于日期的信息,需要创建新的实例来检索日期信息;

    • 继承自NSObject;
    代码
    // 初始化组件
    NSDateComponents *components = [[NSDateComponents alloc]init];
    NSCalendar *calendar = [[NSCalendar alloc]initWithCalendarIdentifier:NSCalendarIdentifierGregorian];
    // 设置日历
    components.calendar = calendar;
    
    // 设置时区
    components.timeZone = [[NSTimeZone alloc]initWithName:@"Asia/Shanghai"];
    
    // 设置时代
    components.era = 1;
    
    // 设置年数
    components.year = 2019;
    
    // 设置月数
    components.month = 6;
    
    // 设置天
    components.day = 10;
    
    // 设置小时
    components.hour = 13;
    
    // 设置分
    components.minute = 24;
    
    // 设置秒
    components.second = 36;
    
    //设置纳秒
    components.nanosecond = 100;
    
    // 转日期
    NSDate *date = [calendar dateFromComponents:components];//2019-06-10 05:24:36 +0000
    
    NSDateComponents *components = [[NSDateComponents alloc]init];
    NSCalendar *calendar = [[NSCalendar alloc]initWithCalendarIdentifier:NSCalendarIdentifierGregorian];
    
    // 通过日历单位设置值
    [components setValue:2019 forComponent:NSCalendarUnitYear];
    [components setValue:6 forComponent:NSCalendarUnitMonth];
    [components setValue:13 forComponent:NSCalendarUnitDay];
    
    // 转日期
    NSDate *date = [calendar dateFromComponents:components];//2019-06-12 16:00:00 +0000
    

    欢迎留言指正,会持续更新!!!

    相关文章

      网友评论

          本文标题:iOS官方文档 Foundation篇---NSDateComp

          本文链接:https://www.haomeiwen.com/subject/gvdzzqtx.html