如何解决无法在 swift
JSON 如下所示
"user": {
"id": 160,"date": "2021-04-13 16:30:06",
现在我只需要在标签中显示日期,如果我像下面这样添加..我得到了总字符串
self?.dateLabel.text = user?["date"] as? String
o/p: 2021-04-13 16:30:06
我只需要 self?.dateLabel.text 中的 2021-04-13
所以我试过了
var dateString = user?["date"] as? String
var dateFormatter = DateFormatter()
dateFormatter.dateFormat = "yyyy-MM-dd"
let date = dateFormatter.date(from: dateString!)
print(date)
o/p:变零
如何仅显示来自 JSON 日期字符串的标签中的日期.. 请帮忙
解决方法
您需要使用 DateFormatter
才能从字符串中取出 Date
对象。为此,您需要一个与此字符串匹配的日期格式,如下所示:
var dateString = "2021-04-13 16:30:06"
var dateFormatter = DateFormatter()
dateFormatter.dateFormat = "yyyy-MM-dd HH:mm:ss"
let date = dateFormatter.date(from: dateString)
之后,您需要使用要显示的日期格式修改您的 DateFormatter
:
if let date = date {
dateFormatter.dateFormat = "yyyy-MM-dd"
let displayText = dateFormatter.string(from: date)
print(displayText)
}
当然,您通常需要知道此日期在 JSON 中表示的时区,否则您最终会得到错误的日期。
要在 DateFormatter
中设置时区,请使用 timeZone
属性。例如设置 GMT 时区:
dateFormatter.timeZone = TimeZone(secondsFromGMT: 0)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。