我有一个Java序列化的流。
我想使用python反序列化。
我尝试使用以下链接解决此问题: Is there a way to deserialize the java object via python
以上链接中建议的代码:
Namespaces
但是我收到此错误:
import javaobj
import self
jobj = self.read_file("obj5.ser")
pobj = javaobj.loads(jobj)
print(pobj)
请建议我是否可以修改上面的代码,或者可以使用其他代码。
答案 0 :(得分:0)
使用self意味着您正在从类内部调用函数。
编辑: 或者,您可以直接使用Unmarshaller对象:
import javaobj
with open("objCollections.ser") as fobj :
marshaller = javaobj.JavaObjectUnmarshaller(fobj)
pobj = marshaller.readObject()
如您在文档中所见: