在我的情况下,我应该使用什么格式的ISO时间戳

时间:2018-06-13 13:22:25

标签: ios swift nsdateformatter

我有ISO 8061格式的时间戳字符串" 2018-06-13T12:11:13 + 05:00 ",创建{{1}的正确方法是什么对象从String?

中输出

我试过了:

Date

但它没有正常工作,let formatter = DateFormatter() formatter.dateFormat = "yyyy-MM-dd'T'HH:mm:ssZ" let myDate = formatter.date(from: "2018-06-13T12:11:13+05:00") 落后一小时。我应该为这种时间戳使用什么格式字符串?

1 个答案:

答案 0 :(得分:0)

ISO 8601时区格式

在首都使用 ZZZZZ

formatter.dateFormat = "yyyy-MM-dd'T'HH:mm:ssZZZZZ"

修改

检查以下示例

我刚刚从 05:00

更改 +05:30
let formatter = DateFormatter()
formatter.dateFormat = "yyyy-MM-dd'T'HH:mm:ssZZZZZ"
formatter.timeZone = TimeZone(identifier: "UTC")

let myDate = formatter.date(from: "2018-06-13T12:11:13+05:30")

formatter.dateFormat = "yyyy-MM-dd HH:mm"
formatter.timeZone = TimeZone.current
print(formatter.string(from: myDate!))

输出

  

2018-06-13 12:11