2016-12-16 53 views
-1

我想在swift 3中顯示一些日期值作爲標籤文本,但獲取類型轉換錯誤。這是我的代碼。斯威夫特3不顯示日期作爲標籤文本

let dateString = "2016-12-15T22:10:00Z" 
let dateFormatter = DateFormatter() 
dateFormatter.dateFormat = "yyyy/MM/dd" 
let s = dateFormatter.date(from: dateString) 

lblDate.text = s 

我收到此錯誤

無法指定日期類型的值類型串

任何幫助!

回答

1

你有兩個問題。

  1. 您正在嘗試將日期分配給字符串。
  2. 您的字符串格式不正確。

這解決兩個問題:

let dateString = "2016-12-15T22:10:00Z" 
let dateFormatter = DateFormatter() 
dateFormatter.dateFormat = "yyyy-MM-dd'T'HH:mm:ssZ" 
let date = dateFormatter.date(from: dateString) 
dateFormatter.dateFormat = "yyyy/MM/dd" 
let s = dateFormatter.string(from: date) 

lblDate.text = s 

這改變了字符串從2016-12-15T22:10:00Z2016/12/16

+0

不,我在這裏使用的格式只是一個樣本,我得到這樣的日期2016-12-15T22:10:00Z,我真的需要格式 –

+1

然後請更新您的問題與您的真正問題,而不是浪費人的帶誤導性問題的時間。 – rmaddy

+0

嘗試'「yyyy-MM-dd'T'HH:mm:ssZ」'使用這個答案http://stackoverflow.com/questions/28016578/swift-how-to-create-a-date-time-stamp- and-format-as-iso-8601-rfc-3339-utc-tim/28016692#28016692 –