2

swift を使用して 16 進文字列をバイト配列に変換する必要があります。次の例の16進文字列で試しました

"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」バイト配列(配列)に追加する必要があります。

何か案が?

4

0 に答える 0