0
我试图实现的是将此格式的出生日期字符串:08/15/2014
转换为NSDate
实例。然后将NSDate
转换回String
,但在ISO format
。
为什么我收到此错误消息? 无法转换表达式的类型 '$ T3' 输入 '$ T4'
// birthdateString = 08/15/2014
let birthdateString = KeychainManager.getString(KeychainManager.StaticVars.kFbBirthdate)
let birthdateAsNSDate = Date.parseFacebookBirthdate(birthdateString)
let birthdateAsISOString = Date.getStringFromDate(birthdateAsNSDate)
日期转换类
class Date {
class func parseFacebookBirthdate(birthdateString: String) -> NSDate {
var dateFormatter = NSDateFormatter()
dateFormatter.dateFormat = "MM/dd/yyyy"
dateFormatter.timeZone = NSTimeZone(name: "UTC")
return dateFormatter.dateFromString(birthdateString)
}
class func getStringFromDate(date: NSDate) -> String {
var dateFormatter = NSDateFormatter()
dateFormatter.dateFormat = "yyyy-MM-dd'T'HH:mm:ssZZZZ"
dateFormatter.timeZone = NSTimeZone.defaultTimeZone()
return dateFormatter.stringFromDate(date)
}
}
我收到这条线上的错误:
let birthdateAsNSDate = Date.parseFacebookBirthdate(birthdateString)
因为结果'dateFormatter.dateFromString(birthdateString)'有待解开我不能编译Date类。 - KeychainManager.getString()返回什么类型?这个问题是否也发生在固定字符串'let birthdateString =“08/15/2014”'? – 2014-11-03 07:51:09
@MartinR我真的解决了这个问题,我不得不解开'birthdateString'和'birthdateAsNSDate'。这就是所需要的。谢谢您的帮助! – 2014-11-03 07:59:01