在Swift3中将原始字节解析为日期

时间:2017-08-08 16:21:03

标签: swift swift3

我有一个数据流日志,我试图将其解析成可用的东西。

我所说的文档应该以块头开头,字节4,5,6,7是Unix日期时间。

它表示将这4个字节转换为Int32以获得总秒数。

这是我到目前为止的代码:

let filepath = Bundle.main.path(forResource: "data", ofType: "tsl")
let url = URL(fileURLWithPath: filepath!)

do {

    let data = try Data(contentsOf: url)

    let timestamp_bytes = Array(data[4..<8])

    let timestamp_data = Data(bytes: timestamp_bytes)

    let timestamp_value = UInt32(bigEndian: timestamp_data.withUnsafeBytes { $0.pointee })

    let timestamp_date = Date(timeIntervalSince1970: Double(timestamp_value))

} catch { }

这并没有在我预期的时间点产生时间戳,有时会在2026年产生。

我是否正确接近这个?

谢谢!

0 个答案:

没有答案