iOS日期转换器返回正确的日期[重复]

Posted

技术标签:

【中文标题】iOS日期转换器返回正确的日期[重复]【英文标题】:iOS date convertor to return proper date [duplicate] 【发布时间】:2017-07-28 16:57:54 【问题描述】:

遇到日期转换问题,我正在从 firebase 数据库中提取时间戳值并尝试将其更改为日期字符串。

下面是将时间戳值转换为日期字符串的结构。

struct DateConverter 

private let date : Double?

init(dateToConvert: Double)
    self.date = dateToConvert


func convertToString() -> String 

    let cDate = Date(timeIntervalSince1970: TimeInterval(date!))
    let dateFormatter = DateFormatter()
    dateFormatter.dateFormat = "yyyy/MM/dd hh:mm a"
    let dateInString = dateFormatter.string(from: cDate)
    return dateInString

但不幸的是,每当我尝试恢复双精度值时,输出似乎完全错误。例如:

1488873726317(来自 firebase 数据库)

使用自定义日期转换器将 Double 值转换为日期字符串后,这是最终输出。

49150/07/14 03:05

今年已经搞砸了,我在这里错过了什么吗?

【问题讨论】:

1488873726317 是以 毫秒为单位的 Unix 时间戳。 输入到 Firebase 的实际日期/时间是什么? @MartinR 搞定了,必须先将其除以 1000 才能获得秒数 ~ 由 -Ro4ch 回答 @mechdon 据我了解~ Ro4ch 的回答是服务器时间戳以毫秒为单位,所以我必须先将其除以 1000。 这就是链接到“重复”中的答案所说的:) 【参考方案1】:

你可能需要分开,

let date = Date(timeIntervalSince1970:addServerStamp/1000)

【讨论】:

感谢现在工作正常,我如何根据时区转换该日期? @Ro4ch

以上是关于iOS日期转换器返回正确的日期[重复]的主要内容,如果未能解决你的问题,请参考以下文章

使用 SimpleDateFormat 将字符串转换为日期返回不正确的格式 [重复]

C#将日期转换为时间戳[重复]

将json结果转换为日期[重复]

将 %B.%Y 转换为日期在 R 中返回 NA [重复]

Javascript:正确地将日期字符串转换为日期对象

如何将包含日期的 varchar 字段类型转换为正确的日期格式