将字节数组转换为字符串并返回
Converting a byte array to string and back
我的 python 后端使用这样的字节数组 '\x00k\x8bEg'
作为 ID。为了在我的 nodejs 前端正确显示它们,我使用下面的操作
hex_data = binascii.hexlify('\x00k\x8bEg')
text_string = hex_data.decode('utf-8')
这可能 return 返回看起来像这样的东西:006b8b4569
我想还原此操作并从我创建的字符串对象中取回我的原始 ID,以便能够 select 从字典中找到所需的项目。
我试过
raw_bytes = binascii.unhexlify('006b8b4569')
但结果不是我原来的ID
我怎样才能成功地来回执行此翻译?
你必须正确地反转这些步骤。
>>> bytestream = b'\x00k\x8bEg'
>>> hex_data = binascii.hexlify(bytestream)
>>> str_data = hex_data.decode('utf-8')
>>> str_data
'006b8b4567'
>>> binascii.unhexlify(str_data.encode('utf-8')) == bytestream
True
我的 python 后端使用这样的字节数组 '\x00k\x8bEg'
作为 ID。为了在我的 nodejs 前端正确显示它们,我使用下面的操作
hex_data = binascii.hexlify('\x00k\x8bEg')
text_string = hex_data.decode('utf-8')
这可能 return 返回看起来像这样的东西:006b8b4569
我想还原此操作并从我创建的字符串对象中取回我的原始 ID,以便能够 select 从字典中找到所需的项目。
我试过
raw_bytes = binascii.unhexlify('006b8b4569')
但结果不是我原来的ID
我怎样才能成功地来回执行此翻译?
你必须正确地反转这些步骤。
>>> bytestream = b'\x00k\x8bEg'
>>> hex_data = binascii.hexlify(bytestream)
>>> str_data = hex_data.decode('utf-8')
>>> str_data
'006b8b4567'
>>> binascii.unhexlify(str_data.encode('utf-8')) == bytestream
True