比较二进制字符串时错误



我有以下问题,这些问题正在打破我的RSPEC测试套件:

irb
2.4.1 :001 > "ax01x00x00x00lxFFxFFxFFxFFax00x00x00"
=> "au0001u0000u0000u0000lxFFxFFxFFxFFau0000u0000u0000"
2.4.1 :002 > "ax01x00x00x00lxFFxFFxFFxFFax00x00x00" == "au0001u0000u0000u0000lxFFxFFxFFxFFau0000u0000u0000"
=> true

为什么此比较返回错误,因为它们是相同的字符串?

1(斜角:: net :: databuilder方法#private:data_to_to_bin convert [2 ** 51 -1] 故障/错误:期望(答案(。

   expected: "au0001u0000u0000u0000lxFFxFFxFFxFFau0000u0000u0000"
        got: "ax01x00x00x00lxFFxFFxFFxFFax00x00x00"

更改sting字面的定义迫使编码, .force_encoding("ASCII-8BIT")

可能您也可以做String#b

相关内容

最新更新