【发布时间】:2020-10-18 22:46:45
【问题描述】:
你知道我如何在 iOS 上拥有以下日期字符串 Jun 28 吗?
-
Jun 28英文版 -
28 juin法语 - 等
我基本上想要short month, day, without year。 (按本地化顺序,例如法语中的day, month)
我尝试了以下方法:
let dateFormatter = DateFormatter()
dateFormatter.dateFormat = "MMM dd"
let dateStr = dateFormatter.string(from: Date())
print(dateStr) // --> Jun 28
它适用于英语,但不适用于其他语言。
例如,如果您设置dateFormatter.locale = Locale(identifier: "fr”)
它应该输出28 juin,但它返回juin 28。
我也试过用:
let date = Date()
let customFormat = "MMM dd"
let frLocale = Locale(identifier: "fr_FR")
let frFormat = DateFormatter.dateFormat(fromTemplate: customFormat, options: 0, locale: frLocale)
let formatter = DateFormatter()
formatter.dateFormat = frFormat
let dateStr = formatter.string(from: date)
print(dateStr) // -> 28 Jun
^__ 顺序正确但月份是英文的。
最接近的是:
let dateFormatter = DateFormatter()
dateFormatter.timeStyle = .none
dateFormatter.dateStyle = .medium
let dateStr = dateFormatter.string(from: Date())
print(dateStr) // --> Jun 28, 2020
^__ 但我不想要年份。
【问题讨论】:
标签: ios swift date nsdateformatter dateformatter