斯威夫特3不显示日期作为标签文本
问题描述:
我想在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
我收到此错误
无法指定日期类型的值类型串
任何帮助!
答
你有两个问题。
- 您正在尝试将日期分配给字符串。
- 您的字符串格式不正确。
这解决两个问题:
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:00Z
到2016/12/16
。
不,我在这里使用的格式只是一个样本,我得到这样的日期2016-12-15T22:10:00Z,我真的需要格式 –
然后请更新您的问题与您的真正问题,而不是浪费人的带误导性问题的时间。 – rmaddy
尝试'“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 –