NSDateFormatter 日期短样式具有不同的值
NSDateFormatter date short style has different values
我有一个 dateFormatter:
private lazy var dateFormatter : DateFormatter = {
let formatter = DateFormatter()
formatter.dateStyle = .short
formatter.timeStyle = .none
return formatter
}()
然后我传递给它某个日期,说:
let str = self.dateFormatter.string(from: Date())
并且我在不同的情况下收到不同的字符串格式,例如,我可以看到类似 05.24.17 或 5/24/17 的字符串。
我的问题:它是否取决于当前的语言环境或设备设置或其他什么?
谢谢。
如评论中所述,DateFormatter
使用当前 Locale
来确定要用于 .short
样式的确切日期格式。但是,如果您愿意,可以提供格式一致的日期。为此,您必须为日期格式化程序显式设置 Locale
,如 playground 快照所示:
我有一个 dateFormatter:
private lazy var dateFormatter : DateFormatter = {
let formatter = DateFormatter()
formatter.dateStyle = .short
formatter.timeStyle = .none
return formatter
}()
然后我传递给它某个日期,说:
let str = self.dateFormatter.string(from: Date())
并且我在不同的情况下收到不同的字符串格式,例如,我可以看到类似 05.24.17 或 5/24/17 的字符串。 我的问题:它是否取决于当前的语言环境或设备设置或其他什么?
谢谢。
如评论中所述,DateFormatter
使用当前 Locale
来确定要用于 .short
样式的确切日期格式。但是,如果您愿意,可以提供格式一致的日期。为此,您必须为日期格式化程序显式设置 Locale
,如 playground 快照所示: