在Swift 3中将结构写入outputStream

时间:2017-08-09 07:41:44

标签: ios swift struct outputstream

我尝试在流中传递结构,然后通过套接字将其发送到另一个设备。代码有效,但发送了错误的数据。每次发送随机数据时 - 我都会做错事。我哪里错了?这是我的代码:

 public struct PStypes {
    var u: UInt32              //< [X_XXXXXX V]
    var i: UInt32              //< [X_XXXXXX A]
   }
 func sendMessage(message: String) {
    var task = PStypes(u: 7, i: 9)
    var bufferData = NSData(bytes: &task, length: 8)
    var data:Data = bufferData as Data
    var bufferDataSize = data.count                
    let bytesWritten = withUnsafePointer(to: &data) {
        $0.withMemoryRebound(to: UInt8.self, capacity: bufferDataSize) {
            outputStream.write($0, maxLength: bufferDataSize)
        }
    }   
}

1 个答案:

答案 0 :(得分:0)

var task = PStypes(u:7,i:9)

我认为您传递 Int 值而不是 UInt32