如何将 C# 的 BitConverter.GetBytes(date.ToBinary()) 转换为 Swift

How to convert C#'s BitConverter.GetBytes(date.ToBinary()) to Swift

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

byte[] dateBArr = 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>([=11=]), count: sizeof(T)))
    }
}