这个NSDate dateFormat是哪种日期格式?

时间:2016-03-21 10:30:35

标签: swift

我想将此字符串转换为NSDate,

dateFormatter.dateFormat = "EEE, dd MMM yyyy HH:mm:ss zzz"

所以我将日期格式设置为:

nil

但它会返回E, dd MMM yyyy HH:mm:ss zzz EEE, dd MMM yyyy hh:mm:ss zzz EEE, d MMM yyyy HH:mm:ss zzz

我尝试将此格式更改为:

nil

但它也会返回pecl install phthreads-2.0.10

我应该使用哪种日期格式?

4 个答案:

答案 0 :(得分:3)

您的格式字符串没问题,但您必须向格式化程序添加兼容的区域设置

例如,您的字符串适用于美国语言环境:

let source = "Mon, 21 Mar 2016 10:26:45 GMT"
let dateFormatter = NSDateFormatter()
dateFormatter.locale = NSLocale(localeIdentifier: "en_US")
dateFormatter.dateFormat = "EEE, dd MMM yyyy HH:mm:ss zzz"
let result = dateFormatter.dateFromString(source)

答案 1 :(得分:0)

试试这段代码:

let dateFormatter = NSDateFormatter()
let dateString = "Mon, 21 Mar 2016 10:26:45 GMT"
dateFormatter.dateFormat = "EEE, dd MMM yyyy HH:mm:ss zzz"
let date = dateFormatter.dateFromString(dateString)

答案 2 :(得分:-1)

尝试转义逗号:

E',' dd MMM yyyy HH:mm:ss zzz

答案 3 :(得分:-1)

您可以尝试以下代码

 let dateString:String = "Mon, 21 Mar 2016 10:26:45 GMT"
 let dateFormat = NSDateFormatter.init()
 dateFormat.dateStyle = .FullStyle
 dateFormat.dateFormat = "ccc, dd MM yyyy HH:mm:ss zzz"
 let date:NSDate? = dateFormat.dateFromString(dateString)
 print(dateFormat.stringFromDate(date!))

如需了解更多信息,请访问NSDateFormatter formatting