我有一个在 Python 中使用 protobuf
反序列化的对象。当我打印对象时,它看起来像一个 python 对象,但是当我试图将它转换成 json
时,我遇到了各种各样的问题。
例如,如果我使用 json.dumps()
,我得到的对象(从协议生成的代码)不包含 _ 迪克特 _ error。
如果我用 jsonpickle 我得到 UnicodeDecodeError: 'utf8' codec can't decode byte 0x9d in position 97: invalid start byte
。
下面的测试代码使用 jsonpickle
,错误如上所示。
if len(sys.argv) < 2:
print ("Error: missing ser file")
sys.exit()
else :
fileLocation = sys.argv[1]
org = BuildOrgObject(fileLocation)
org = org.Deserialize()
#print (org)
jsonObj = jsonpickle.encode(org)
print (jsonObj)