如何根据区域设置仅显示日期的日期和月份?
How to display only the day and month of a date based on the locale?
我只想显示日期的日期和月份,但我希望它基于用户的区域设置。
例如我有以下日期:21/05/2015 00:16:00 GMT+10
如果语言环境是 en_US
,我想要 May 21
;如果语言环境是 fr_FR
,我想要 21 May
。
我使用 NSDateFormatter
格式化程序的 dateStyle
进行了查找,但找不到我想要的内容。
大概是这样的:
let d = // the date
let df = NSDateFormatter()
let format = NSDateFormatter.dateFormatFromTemplate(
"dMMMM", options:0, locale:NSLocale.currentLocale())
df.dateFormat = format
let s = df.stringFromDate(d)
请注意,结果中涉及设备上的语言和区域设置。
您可以使用简单的扩展名:
public extension NSDate {
func getNiceDate() -> String! {
let dateFormatter = NSDateFormatter()
let format = NSDateFormatter.dateFormatFromTemplate(
"dMMMM", options:0, locale:NSLocale(localeIdentifier: "en_US"))
dateFormatter.dateFormat = format
return dateFormatter.stringFromDate(self)
}
}
我只想显示日期的日期和月份,但我希望它基于用户的区域设置。
例如我有以下日期:21/05/2015 00:16:00 GMT+10
如果语言环境是 en_US
,我想要 May 21
;如果语言环境是 fr_FR
,我想要 21 May
。
我使用 NSDateFormatter
格式化程序的 dateStyle
进行了查找,但找不到我想要的内容。
大概是这样的:
let d = // the date
let df = NSDateFormatter()
let format = NSDateFormatter.dateFormatFromTemplate(
"dMMMM", options:0, locale:NSLocale.currentLocale())
df.dateFormat = format
let s = df.stringFromDate(d)
请注意,结果中涉及设备上的语言和区域设置。
您可以使用简单的扩展名:
public extension NSDate {
func getNiceDate() -> String! {
let dateFormatter = NSDateFormatter()
let format = NSDateFormatter.dateFormatFromTemplate(
"dMMMM", options:0, locale:NSLocale(localeIdentifier: "en_US"))
dateFormatter.dateFormat = format
return dateFormatter.stringFromDate(self)
}
}