1
我正在使用SwiftSocket library,我试图将UDP套接字从类型'UInt8?,String,Int'接收的数据转换为String类型。使用Swift将UInt8?,String,Int转换为String类型
let data = client.recv(1024)
let string = NSData.withBytes(data)
let str = NSString(data: string, encoding: NSUTF8StringEncoding) as String?
当我尝试这一点,我得到以下错误:
Cannot convert value of type '((UInt8]?,String,Int)' (aka'(Optional>, String, Int)') to be expected argument type '[UInt8'
如果我打印出 '数据',我收到以下:
(Optional([104, 101, 108, 108, 111]), "127.0.0.1", 34835)
其中104,101,108,108,111是字符串“你好”。
有没有办法将读取的数据转换为字符串?
http://stackoverflow.com/questions/24196820/nsdata-from-byte-array-in-swift – Darko
你必须将它转换为UInt8数组。 – Darko
在你发布的链接中,答案是:var endMarker = NSData(字节:[0xFF,0xD9]为[UInt8],长度为2)。什么是FF和D9?你能告诉我一个例子吗? – bshah