无法将十六进制字符串转换为uint8字节数组

时间:2017-05-22 10:38:17

标签: ios arrays swift hex uint8array

我需要使用swift将十六进制字符串转换为字节数组。我试过以下示例十六进制字符串

"7B737369643A32333A34333A34353A31352C70617373776F72643A31323334357D"

这是我的代码

func sendCmd (CMD: [UInt8],length: Int ,hexString: String)
    {

        var tosend = Array<UInt8>()
        var lenval = Array<UInt8>(repeating: 0, count: 2)
        lenval[0] = (UInt8)(length & 0xff)
        lenval[1] = (UInt8)((length >> 8) & 0xff)

        tosend.append(CMD[0])
        tosend.append(CMD[1])
        tosend.append(lenval[0])
        tosend.append(lenval[1])
}

我得到了像这样的输出

[123, 115, 115, 105, 100, 58, 50, 51, 58, 52, 51, 58, 52, 53, 58, 49, 53, 44, 112, 97, 115, 115, 119, 111, 114, 100, 58, 49, 50, 51, 52, 53, 125]

但我需要得到像这样的输出

 [0x7B, 0x73, 0x73, 0x69, ......]

最后我必须将输出数组附加到“tosend”字节数组(Array)。

有什么想法吗?

0 个答案:

没有答案