SWIFT:转换格式为E,dd,MMM,y,KK:mma的日期

时间:2016-01-02 12:47:17

标签: swift nsdate

我正在尝试使用以下代码将日期从String转换为NSDate:

let dateFormatter = NSDateFormatter()
dateFormatter.dateFormat = "E, dd MMM yyyy, KK:mma"
date = dateFormatter.dateFromString(strDate)

我也尝试过以下格式:

  1. EEE,dd MMM yyyy,hh:mma
  2. EEE,dd MMM yyyy,KK:mm
  3. 但输出总是为零

      

    2016年1月12日上午7:30转换为星期二,格式化程序E,dd MMM yyyy,KK:mma

    我还考虑了以下StackOverflow帖子:

    1. String to NSDate in Swift
    2. How can I convert string date to NSDate?
    3. 我一直使用this link作为日期格式的参考

1 个答案:

答案 0 :(得分:5)

典型的原因是您的设备未设置为英语。请注意,解析TueJan等字符串是特定于语言的。这意味着您必须确保格式化程序具有正确的语言集,例如:

dateFormatter.locale = NSLocale(localeIdentifier: "en")