繁体   English   中英

如何在python中使用json存储十六进制数据

[英]how to store Hex data using json in python

将数据存储到文件中时出现此错误

TypeError:b'\\ x1fa \\ xec \\ xb5 \\ xed] k \\ xaf \\ x8dzph \\ xb2 \\ x8d \\ xcc \\ x8e'不可序列化JSON

这是我正在使用的代码。 但这似乎并没有给出正确的结果,因为一旦存储了数据,文件就会损坏。

    iv = os.urandom (16)
    msg_IV = base64.b64encode(iv)
    padding = u'\u0000'
    file = {"IV": msg_IV,\
        "Padding Character": padding }

    fp = open("local.txt", "w")
    json.dump(file, fp, indent=4)
    fp.close()

这个小程序应该存储加密的变量信息并存储在文件中。

您所拥有的是一个字节字符串,并且没有标准方法将原始字节存储在JSON对象中。

您应该将字节编码为base64并将base64字符串存储在JSON对象中:

import base64

b64String = base64.b64encode(myByteString)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM