Project1

标题: [700]如何将类写入文件并且还原 [打印本页]

作者: 八云紫    时间: 2009-4-10 06:38
标题: [700]如何将类写入文件并且还原
测试脚本是这样的:

class Map
  def initialize
    @MapPassage = [[225, 0, 60, 137],[285, 0, 73, 164],[358, 0, 60, 136]]
  end
end
a = File.open("Data/Map.dat", "w+b")
b = Map.new
a << b
a.close
exit

问题是,为什么每次写入文件都是类的地址,而不是内容的说??

然后要写入内容的话,应该怎么转换? 再然后是怎么读取还原成原来的类~~~~ [LINE]1,#dddddd[/LINE]版务信息:本贴由楼主自主结贴~
作者: 紫苏    时间: 2009-4-10 07:03
对象的序列化,跟 Java 的一样~
a = File.open("Data/Map.dat", "w+")
b = Map.new
Marshal.dump(b, a)
a.close

File.open("Data/Map.dat") do |fin|
  c = Marshal.load(fin)  
end

楼下 tom 谬赞了,三人行必有我师,很多地方我是要向你请教的~ [LINE]1,#dddddd[/LINE]系统信息:本贴由楼主认可为正确答案,66RPG感谢您的热情解答~
作者: 八云紫    时间: 2009-4-10 07:06
嘎嘎,一直再找这个方法的说~~~~{/hx}
作者: tommay    时间: 2009-4-10 07:09
我什么时候能够像两位大大那么强啊,膜拜ing……

话说,这个帖子可以称为"两大高手的对话"




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1