诀窍是使用
bindMemory函数:
func write(_ data: Data) -> Int { return data.withUnsafeBytes({ (rawBufferPointer: UnsafeRawBufferPointer) -> Int in let bufferPointer = rawBufferPointer.bindMemory(to: UInt8.self) return self.write(bufferPointer.baseAddress!, maxLength: data.count) })}尽管此功能适用于Swift 5.0,但显然存在一些问题。参见相关论坛讨论。



