将具有.000Z的日期字符串格式化为NSDate [英] Format date string with .000Z into NSDate

查看:75
本文介绍了将具有.000Z的日期字符串格式化为NSDate的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想将日期字符串格式化为NSDate对象,这听起来好像没什么大不了的.

I would like to format a date string into a NSDate object, which doesn't sound like a big thing.

重点是,日期字符串在时区值中包含一个点,而不是加号或其他内容.日期看起来像这样:

The point is, that the date string contains a dot in the timezone value instead of a plus or something else. A date looks like this:

2017-06-04T16:00:00.000Z

我尝试了格式字符串,例如

I tried format strings like

yyyy-MM-dd'T'HH:mm:ss.ZZZZ
yyyy-MM-dd'T'HH:mm:ss.ZZZ
yyyy-MM-dd'T'HH:mm:ss.Z

当然,我也在 nsdateformatter.com 上进行了检查,该方法可以工作,但在xCode中NSDate始终为nil.

Of course I've also checked it on nsdateformatter.com, which works but in xCode the NSDate is always nil.

推荐答案

对我有用

var str = "2017-06-04T16:00:00.000Z"
let formato = DateFormatter()
formato.dateFormat = "yyyy-MM-dd'T'HH:mm:ss.SSSZ"
formato.timeZone = NSTimeZone(name: "UTC")! as TimeZone
formato.formatterBehavior = .default
var data = formato.date(from: str)

这篇关于将具有.000Z的日期字符串格式化为NSDate的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆