我如何在swift 5中找到2天之间的天数? [复制]
Posted
技术标签:
【中文标题】我如何在swift 5中找到2天之间的天数? [复制]【英文标题】:how do i find number of days between 2 days in swift 5? [duplicate] 【发布时间】:2020-06-13 04:05:58 【问题描述】:如何快速找到获取时间。
【问题讨论】:
请编辑您的问题并显示您尝试过的内容以及您面临的问题。您还应该改进您的帖子并更具体。如果一个日期是晚上 11:59,另一个日期是第二天上午 12:00,您期望的结果是什么。它被认为是一天还是零? 【参考方案1】:如果您的两个日期是字符串,请将它们转换为Date
对象(使用DateFormatter
),然后您可以使用Calendar
方法dateComponents(_:from:to:)
来获取天数:
func days(from: String, to: String) -> Int?
let formatter = DateFormatter()
formatter.dateFormat = "MM/dd/yyyy"
guard
let date1 = formatter.date(from: from),
let date2 = formatter.date(from: to)
else
return nil
return Calendar.current.dateComponents([.day], from: date1, to: date2).day
【讨论】:
这可能不会返回确切的天数。如果没有时间信息,它可能会在一天凌晨 1:00(夏令时)和另一天午夜。您应该使用中午时间进行这种日历计算 在解析固定日期格式时,Yiu 还应将语言环境设置为“en_US_POSIX”。我还会设置日历属性以防万一,以避免一些夏令时问题。 ***.com/a/32408916/2303865 试试func days(from: String, to: String) -> Int? let formatter = DateFormatter() formatter.locale = Locale.init(identifier: "pt_BR") formatter.dateFormat = "MM/dd/yyyy" guard let date1 = formatter.date(from: from), let date2 = formatter.date(from: to) else return nil return Calendar.current.dateComponents([.day], from: date1, to: date2).day days(from: "10/18/2015", to: "10/19/2015")
// 无
我已将定位设置为巴西,但可以是任何位置
现在添加 formatter.calendar = .current
它将返回 0以上是关于我如何在swift 5中找到2天之间的天数? [复制]的主要内容,如果未能解决你的问题,请参考以下文章