swift - 如何从日期类型中获取日期和月份 - swift 4

标签 swift date

我有数据类型为日期的变量,我以这种格式存储日期

2018-12-24 18:00:00 UTC



我怎样才能从这一天或这个月得到?

最佳答案

细节

  • Xcode 版本 11.0 (11A420a),Swift 5

  • 链接

    How to convert string to Date

    解决方案
    extension Date {
        func get(_ components: Calendar.Component..., calendar: Calendar = Calendar.current) -> DateComponents {
            return calendar.dateComponents(Set(components), from: self)
        }
    
        func get(_ component: Calendar.Component, calendar: Calendar = Calendar.current) -> Int {
            return calendar.component(component, from: self)
        }
    }
    

    用法
    let date = Date()
    
    // MARK: Way 1
    
    let components = date.get(.day, .month, .year)
    if let day = components.day, let month = components.month, let year = components.year {
        print("day: \(day), month: \(month), year: \(year)")
    }
    
    // MARK: Way 2
    
    print("day: \(date.get(.day)), month: \(date.get(.month)), year: \(date.get(.year))")
    

    关于swift - 如何从日期类型中获取日期和月份 - swift 4,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53356392/

    相关文章:

    swift - .prepare 与 .select

    swift - 我得到了我不能得到的可选值。 swift 3.2

    C# 获取Excel起息日

    python - 如何使用 Python 格式化 pubDate

    Swift 3 - 获取星期一的日期

    javascript - 无法让过滤器在 AngularJS 中执行

    swift - XCTestCase 中未调用 UITextFieldDelegate

    swift - 找不到接受类型参数列表的 XCTAssertEqual 的重载 ([String : AnyObject], [String : AnyObject])

    swift - 应用程序运行后崩溃?

    php - 如何在 Laravel 5 中根据单独的日、月、年输入验证输入日期