Swift 如何使用包含友好日期和月份的DateFormatter格式化日期

Swift 如何使用包含友好日期和月份的DateFormatter格式化日期,swift,nsdateformatter,Swift,Nsdateformatter,如何格式化包含友好日期和月份文字的日期,例如: “2018年6月14日,星期四” 日期可以是: 星期日、星期一、星期二、星期三、星期四、星期五、星期六, 星期五 月份可以是: 一月,二月,三月,四月,五月,六月,七月,八月,九月, 十月、十一月、十二月 格式应设置为什么 像这样的 static let format = "DAY, MONTH, dd, YYYY" 甚至可以使用DateFormatter()执行此操作吗?使用EEEE作为完整的工作日名称,使用MMMM作为完整的月份名称。但是,由

如何格式化包含友好日期和月份文字的日期,例如:

“2018年6月14日,星期四”

日期可以是:

星期日、星期一、星期二、星期三、星期四、星期五、星期六, 星期五

月份可以是:

一月,二月,三月,四月,五月,六月,七月,八月,九月, 十月、十一月、十二月

格式应设置为什么

像这样的

static let format = "DAY, MONTH, dd, YYYY"

甚至可以使用DateFormatter()执行此操作吗?

使用
EEEE
作为完整的工作日名称,使用
MMMM
作为完整的月份名称。但是,由于您正在解析英语格式的固定格式字符串,因此还必须将格式化程序的区域设置设置为
en_US\u POSIX

let formatter = DateFormatter()
formatter.dateFormat = "EEEE, MMMM d, yyyy"
formatter.locale = Locale(identifier: "en_US_POSIX")
return formatter.date(from: "Thursday, June 14, 2018")
请注意,这会将日期视为用户的本地时区

有关所有可能的日期格式模式,请参阅

let formatter = DateFormatter()
formatter.dateFormat = "EEEE, MMMM d, yyyy"
formatter.locale = Locale(identifier: "en_US_POSIX")
return formatter.date(from: "Thursday, June 14, 2018")