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