DateFormatter的LocalizedString与iOS默认日历应用程序不同

时间:2017-08-14 23:23:22

标签: ios swift nsdateformatter

当我尝试从SRange.AdvancedFilter Action:=xlFilterInPlace, CriteriaRange:=FRange, Unique:=False 获取localizedString时,输出与iOS默认日历应用显示的格式不同。

美国区域设置显示的

DateFormatter(对于dateStyle已满)

  

2017年8月15日,星期二

iOS默认日历应用显示

  

2017年8月15日星期二

KR Locale的

DateFormatter显示(对于dateStyle已满)

  

2017년8월15일화요일

iOS默认日历应用显示

  

2017년8월15일(화)

如何获取iOS默认日历应用中显示的DateFormatter?我应该为所有语言环境创建自定义格式吗?

2 个答案:

答案 0 :(得分:4)

所有标准样式均未显示缩写的工作日和月份名称。

一种选择是使用setLocalizedDateFormatFromTemplate

let df = DateFormatter()
df.setLocalizedDateFormatFromTemplate("EEEMMMddyyyy")
let string = df.string(from: Date())

答案 1 :(得分:1)

尝试以下方法:

let formatter = DateFormatter()
formatter.setLocalizedDateFormatFromTemplate("EEE, MMM dd, yyyy")
print(formatter.string(from: Date()))