swift ロケールから自分のタイムゾーンへ時刻変換
端末のロケールからユーザのタイムゾーンに時刻変換するメソッド。
func changeDateFormatM(dt_txt:String)->String{ var date_formatter: NSDateFormatter = NSDateFormatter() date_formatter.timeZone = NSTimeZone(name: "GMT") date_formatter.dateFormat = "yyyy/MM/dd HH:mm:ss" let tmpDate:NSDate = date_formatter.dateFromString(dt_txt)! let localeName = NSLocale.preferredLanguages().first as! String let myDateFormatter: NSDateFormatter = NSDateFormatter() myDateFormatter.dateFormat = "MM/dd" myDateFormatter.locale = NSLocale(localeIdentifier: localeName) var localeDate: NSString = myDateFormatter.stringFromDate(tmpDate) return localeDate as String }
日本は上手くいってるけど、もしかすると他国はダメかも...
ご参考に。