繁体   English   中英

在Swift中将字符串格式化为NSdate

[英]Format string to NSdate in Swift

我的字符串是=“ 2015-08-26 14:21:40.557”

我的代码:

var dateFormatter = NSDateFormatter()
        dateFormatter.dateFormat = "yyyy-MM-dd hh:mm:Z"

        var date = dateFormatter.dateFromString(creationDateStr as String )

我得到一个nil date,什么是正确的格式?

格式必须与您输入的字符串完全匹配,因此

dateFormatter.dateFormat = "yyyy-MM-dd HH:mm:ss.SSS"

会做的工作。

请注意, Z用于时区,而不用于(毫秒)秒。

HH持续24小时; hh仅允许介于01和12之间的值,并且通常与a配对以指示AM / PM。

        var dateFormatter = NSDateFormatter()
        dateFormatter.dateFormat = "yyyy-MM-dd HH:mm:ss.SSS"

        var date = dateFormatter.dateFromString(creationDateStr as String )

如果您的字符串不是此日期格式,则将返回nil。 (例如,“ 5/26/2015”将返回nil,但“ 2015-05-26 12:30:00.123”将返回nsdate)

您尝试解析的字符串的格式不正确。

正确的格式是:

“ yyyy-MM-dd HH:mm:ss.SSS”

解析不正确的格式将返回nil值。

var str = "2015-08-26 14:21:40.557"
var dateFormatter = NSDateFormatter()
dateFormatter.dateFormat = "yyyy-MM-dd HH:mm:ss.SSS"
var date = dateFormatter.dateFromString(str)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM