我在 Object 上找到了serialized和justSerialized方法,并且已经成功地将对象序列化为文件,但我找不到匹配的反序列化方法。
是没有还是我太笨了找不到?
我在 Object 上找到了serialized和justSerialized方法,并且已经成功地将对象序列化为文件,但我找不到匹配的反序列化方法。
是没有还是我太笨了找不到?
我认为doString
或doMessage
应该做您需要的事情(尽管我目前无法确认这一点,因为我没有在这台机器上运行 Io)。
例如:
doString( yourSerializedString )
或者
doMessage( yourSerializedString asMessage )
更新- 现在可以确认doString
或doMessage
确实有效。完整示例如下:
Foo := Object clone do (
name ::= nil
)
doRelativeFile("Foo.io")
baz := Foo clone setName("baz")
// serialize "baz" object to file
File with("serialized.data") open write(baz serialized) close
doRelativeFile("Foo.io")
baz := doString(
File with("serialized.data") open readLines join
)
事实上,您也可以使用or反序列化对象:doRelativeFile
doFile
baz := doRelativeFile("serialized.data")
因为序列化数据只是 Io 代码。
/I3az/