将十六进制字符串转换为ASCII字符串显示00的错误结果

时间:2017-08-03 07:27:40

标签: ios objective-c

下面是我的Hex到ASCII转换方法

Fragments

上面的methode将Hex String转换为ASCII,但我注意到一个场景给出了错误的结果,如下所示:

strHex:4E4932313533000000000066 Ascii:NI2153 [0] [0] [0] [0] [0] f(错误)

为什么00我得到[0]。 ?

我的方法工作得非常好,只有在Hex字符串中有00,因为我提到我在Ascii字符串中得到[0]。

请让我知道经过测试的完美转换方法......

先谢谢

1 个答案:

答案 0 :(得分:1)

如果十六进制字符串为00,则0中的值为_byte,因此您位于else分支中,并获得[0]作为[strAscii appendFormat:@"[%d]", _byte];的结果{1}}。

相关问题