Swift Calendar、指定LocalでshortMonthSymbols使用
お題
日本語Local環境で「Nov」と変換したい。
Calendar.current.shortMonthSymbols[10]
11月と表示される。
解決方法
var calendar = Calendar.current calendar.locale = Locale(identifier: "en") calendar. shortMonthSymbols[10]
複数箇所で使用したい為、Extension
import Foundation
extension Calendar {
static func monthSymbols(local: Locale) -> [String] {
var calendar = Calendar.current
calendar.locale = local
return calendar.monthSymbols
}
static func standaloneMonthSymbols(local: Locale) -> [String] {
var calendar = Calendar.current
calendar.locale = local
return calendar.standaloneMonthSymbols
}
static func shortMonthSymbols(local: Locale) -> [String] {
var calendar = Calendar.current
calendar.locale = local
return calendar.shortMonthSymbols
}
static func shortStandaloneMonthSymbols(local: Locale) -> [String] {
var calendar = Calendar.current
calendar.locale = local
return calendar.shortStandaloneMonthSymbols
}
}
使用例
Calendar.shortMonthSymbols(local: Locale(identifier: "en"))[10]






