NSDateFormatter日期短样式具有不同的值

时间:2017-05-24 11:18:18

标签: swift nsdate nsdateformatter

我有一个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这样的字符串。 我的问题:它取决于当前的区域设置或设备设置还是其他?

感谢。

1 个答案:

答案 0 :(得分:1)

正如评论中所述,DateFormatter使用当前Locale来确定用于.short样式的确切日期格式。但是,如果您愿意,可以提供一致格式的日期。为此,您必须为日期格式化程序明确设置Locale,如此操场快照中所示:

enter image description here