如何转换C#和#x27;s BitConverter.GetBytes(date.ToBinary())到Swift
我必须把一些C代码移植到Swift。 虽然我可以阅读和转换大部分C代码,但我对这一点有点困惑:如何转换C#和#x27;s BitConverter.GetBytes(date.ToBinary())到Swift,c#,ios,swift,nsdate,C#,Ios,Swift,Nsdate,我必须把一些C代码移植到Swift。 虽然我可以阅读和转换大部分C代码,但我对这一点有点困惑: byte[] dateBArr = BitConverter.GetBytes(date.ToBinary()); 有人知道这在Swift中应该是怎样的吗?是的,我解决了。 这是我的解决方案(如果IIRC为Swift 2.0) 以及转换为byteArray func toByteArray<T>(var value: T) -> [UInt8] { return withU
byte[] dateBArr = BitConverter.GetBytes(date.ToBinary());
有人知道这在Swift中应该是怎样的吗?是的,我解决了。
这是我的解决方案(如果IIRC为Swift 2.0)
以及转换为byteArray
func toByteArray<T>(var value: T) -> [UInt8] {
return withUnsafePointer(&value) {
Array(UnsafeBufferPointer(start: UnsafePointer<UInt8>($0), count: sizeof(T)))
}
}
func-toByteArray(变量值:T)->[UInt8]{
返回带unsafepointer(&value){
数组(UnsafeBufferPointer(开始:UnsafePointer($0),计数:sizeof(T)))
}
}
,您能否在swift中获得等效的“ticks”属性?我预测你将来会有一些乘法运算。你解决了这个问题吗?我需要做与swift中的BitConverter.getBytes相同的事情。是的,我把它放在这里作为答案
func toByteArray<T>(var value: T) -> [UInt8] {
return withUnsafePointer(&value) {
Array(UnsafeBufferPointer(start: UnsafePointer<UInt8>($0), count: sizeof(T)))
}
}