Nan*_*rve 5 nsdate nsdateformatter swift
在我的应用程序中,如果iPhone设备时间是12小时格式化,则日期格式化程序正常工作,但如果设备时间是24小时格式,则应用程序崩溃.
let dateFormatter = NSDateFormatter();
dateFormatter.dateStyle = NSDateFormatterStyle.ShortStyle
dateFormatter.timeStyle = NSDateFormatterStyle.NoStyle;
dateFormatter.dateFormat = "hh:mm a";
var dt1 = dateFormatter.dateFromString(arrSecond.objectAtIndex(n) as! String)
Run Code Online (Sandbox Code Playgroud)
Nan*_*rve 15
@Rajan感谢您给我的想法NSLocale.我将dateformatter的语言环境标识符设置为" en_US_POSIX".我只是在分配日期格式化程序后在我的代码中添加以下行. dateformatter.locale = NSLocale(localeIdentifier:"en_US_POSIX")
谢谢你给出了这个想法
南迪尼答案是正确的。但是唯一的问题是,如果您对语言环境进行编码,则日期仅以英文显示。
就我而言,我想要用法语,这是一个在Swift 3中对我有用的解决方法:
dateformatter.locale = Locale(identifier: NSLocale.current.identifier)
Run Code Online (Sandbox Code Playgroud)