gpt4 book ai didi

swift - 不正确的字符串到日期转换 swift 3.0

转载 作者:行者123 更新时间:2023-11-28 12:13:23 25 4
gpt4 key购买 nike

我正在将字符串格式(如 10/24 12:00 PM)转换为等效的日期格式。我正在使用以下代码:

let dateFormatter = DateFormatter()
dateFormatter.dateFormat = "MM/dd hh:mm aa"

self.dateCompleted = dateFormatter.date(from: self.DeliverBy!)

dateCompleted 是一个日期变量,而 self.DeliveryBy 是一个字符串变量。

我得到的输出类似于 2000-10-24 17:00:00 UTC,而它应该类似于 2017-10-24 12:00:00 UTC。我做错了什么吗?

我提到了 http://userguide.icu-project.org/formatparse/datetime

最佳答案

您的日期字符串未指定年份,因此根据默认日期确定。您可以做的是设置默认日期为当天(开始):

let dateFormatter = DateFormatter()
dateFormatter.dateFormat = "MM/dd hh:mm aa"
dateFormatter.defaultDate = Calendar.current.startOfDay(for: Date())
if let dateCompleted = dateFormatter.date(from: "10/24 12:00 PM") {
print(dateCompleted) // 2017-10-24 10:00:00 +0000
}

(我在欧洲/柏林时区,因此打印 12:00 PM格林威治标准时间 10:00。)

关于swift - 不正确的字符串到日期转换 swift 3.0,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47682631/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com