我有以下日期字符串:
let dateString = "2018-06-24T14:52:32.647Z"
我正在尝试将其转换为日期。但是,它不适用于我的DateFormatter
。
我已经扩展了DateFormatter,以提供在整个应用程序中使用的静态格式化程序:
extension DateFormatter {
static let formatter: DateFormatter = {
let formatter = DateFormatter()
formatter.dateFormat = "yyyy-MM-dd'T'HH:mm:ss.SSSZZZ"
return formatter
}()
}
然后我说:
let date = DateFormatter.formatter.date(from: dateString)
它在我的一台设备上返回nil
,但在其余设备上均可使用。我究竟做错了什么?是不是因为我最后有三个Z
,我应该有一个?
答案 0 :(得分:1)
您需要下一个日期格式:
extension DateFormatter {
static let formatter: DateFormatter = {
let formatter = DateFormatter()
formatter.dateFormat = "yyyy-MM-dd'T'HH:mm:ss.SSS'Z'"
return formatter
}()}
答案 1 :(得分:0)
如果它可以在某些设备上使用,则必须是语言和地区问题。
签入设置->常规->语言和区域,在哪个区域工作,哪个不工作。
每个地区都有不同的日期格式。
答案 2 :(得分:0)
您将错误的格式发送给格式化程序
您必须更改此代码
n = size(A,2)
out = [ones(1,n);A]
使用
formatter.dateFormat = "yyyy-MM-dd'T'HH:mm:ss.SSSZZZ"