如何转换c# 's BitConverter.GetBytes(date.ToBinary())到Swift

本文关键字:date GetBytes BitConverter ToBinary Swift 何转换 转换 | 更新日期: 2023-09-27 17:50:14

我必须移植一些c#代码到Swift。虽然我可以阅读和转换大部分c#代码,但我对此有点困惑:

byte[] dateBArr = BitConverter.GetBytes(date.ToBinary());

有谁知道这在Swift中应该是怎样的吗?

如何转换c# 's BitConverter.GetBytes(date.ToBinary())到Swift

是的,我解决了。这是我的解决方案(Swift 2.0如果IIRC)

let dateNumber = NSNumber(double: NSDate().timeIntervalSince1970)
let ticks = NSNumber(longLong:dateNumber.longLongValue * 10000000 + 621355968000000000)
let dateDataByteArray:[UInt8] = self.toByteArray(ticks.longLongValue)

和转换为byteArray

func toByteArray<T>(var value: T) -> [UInt8] {
    return withUnsafePointer(&value) {
        Array(UnsafeBufferPointer(start: UnsafePointer<UInt8>($0), count: sizeof(T)))
    }
}