2016-11-10 3 views

答えて

0

がそれを手に入れました!

var recived = [UInt8]() 

func serialPort(_ serialPort: ORSSerialPort, didReceive data: Data) { 
     recived.removeAll() 
     print("recieved:\(data))") 
     recived.append(contentsOf: data) 
} 
0

使用withUnsafeBytes:スウィフト3では

let data = "ABCD".data(using: .ascii)! 
data.withUnsafeBytes { (pointer: UnsafePointer<UInt8>) in 
    //Prints 67 which is the ASCII value of 'C' 
    print(pointer[2]) 
} 
8

UInt8CollectionとしてData作品なので、あなたは、単にArray.initを使用することができます。

var recived: [UInt8] = [] 

func serialPort(_ serialPort: ORSSerialPort, didReceive data: Data) { 
    print("recieved:\(data))") 
    recived = Array(data) 
} 

しかし、Array.init(またはArray.append(contentsOf:))コピーDataの内容なので、あなたがDataの巨大なサイズで作業する必要がある場合、それは効率的ではありません。

関連する問題