嗨,我想从2017-07-31T11:40:00.000Z
获取11:40
形式的时间
下面是我正在使用的代码:
let formatter = Foundation.DateFormatter()
formatter.dateFormat = "YYYY-MM-dd'T'HH:mm:ss.sssZ" //2017-04-01T18:05:00.000
let date1 = formatter.date(from: data.arvTime)
print("date:\(String(describing: date1))")
let dateFormatterPrint = Foundation.DateFormatter()
dateFormatterPrint.dateFormat = "HH:mm"
let resultTime = dateFormatterPrint.string(from: date1!)
print("time:\(String(describing: resultTime))")
获取的时间为1:29
,即我获取的时间错误。
请帮我解决这个问题。
4条答案
按热度按时间pw9qyyiw1#
使用日期格式
代替
对于完整代码
备选方案2
输出
epfja78i2#
NSLog始终以GMT时区(而不是您的本地时区)打印日期对象。请使用您的本地时区
sqyvllje3#
使用
dateFormatter
的timeZone
属性。f0ofjuux4#
对于Kotlincreate扩展,您可以查看它
第一步,将字符串转换为本地日期,这里dateFormat是您的输入数据格式,timeZone是输入时间Zoon
第二步是将本地时间转换成你想要的时间格式,如:2022年23月12日10时50分5秒
简单调用这些函数如下