iPhone 24 小时日期格式中的日期转换始终为零
Date conversion is always nil in iPhone 24hr date format
我正在尝试将字符串转换为以 12 小时制日期格式正常工作的日期。当我将设备日期格式切换为 24 时,它总是返回 nil。请检查以下代码
let formatter = DateFormatter()
formatter.dateFormat = "h:mm a"
let date = formatter.date(from: "6:00 am")
if you're working with fixed-format dates, you should first set the locale of the date formatter to something appropriate for your fixed format. In most cases the best locale to choose is "en_US_POSIX", a locale that's specifically designed to yield US English results regardless of both user and system preferences.
因此,要防止使用设备的区域设置解释日期,您需要设置 DateFormatter
的 locale
属性
let formatter = DateFormatter()
formatter.locale = Locale(identifier: "en_US_POSIX")
formatter.dateFormat = "hh:mm a"
let date = formatter.date(from: "6:00 am")
注意:在设置 dateFormat
之前设置 locale
很重要
我正在尝试将字符串转换为以 12 小时制日期格式正常工作的日期。当我将设备日期格式切换为 24 时,它总是返回 nil。请检查以下代码
let formatter = DateFormatter()
formatter.dateFormat = "h:mm a"
let date = formatter.date(from: "6:00 am")
if you're working with fixed-format dates, you should first set the locale of the date formatter to something appropriate for your fixed format. In most cases the best locale to choose is "en_US_POSIX", a locale that's specifically designed to yield US English results regardless of both user and system preferences.
因此,要防止使用设备的区域设置解释日期,您需要设置 DateFormatter
locale
属性
let formatter = DateFormatter()
formatter.locale = Locale(identifier: "en_US_POSIX")
formatter.dateFormat = "hh:mm a"
let date = formatter.date(from: "6:00 am")
注意:在设置 dateFormat
locale
很重要