使用BinaryFormatter.Serialize序列化python对象

时间:2013-11-13 11:55:26

标签: ironpython python-2.6

我使用API​​开发扩展程序,API使用

System.Runtime.Serialization.Formatters.Binary.BinaryFormatter

序列化它运行良好的路径数据类型,直到我使用python的内置数据类型将数据存储在变量中以备将来使用

但我的问题是当我继承其中一种数据类型并尝试重新启动应用程序时,它在序列化时遇到问题并且不存储对象

我想知道是否有任何方法可以使我的对象Serializable而不将它们转换为标准数据类型

以供参考,可能跟随代码帮助

代码

from System import MarshalByRefObject  as MBRO
from System.Runtime.Serialization.Formatters.Binary import BinaryFormatter  as BF
from System.IO import File
class SampleObject(MBRO):
    def __init__(self):
        self.a = 2
        self.b = 3
        self.c =4
        self.d = 5

s=SampleObject()
st=File.Create(r"D:\users\*******\****\***********\test4")

bfo=BF()
bfo.Serialize(st,s)
st.Close()

错误

  

SystemError:输入' IronPython.NewTypes.System.MarshalByRefObject_4 $ 4'在Assembly' Snippets.scripting,Version = 0.0.0.0,Culture = neutral,PublicKeyToken = null'未标记为可序列化。

0 个答案:

没有答案