本帖最后由 RyanBern 于 2019-2-3 23:05 编辑
按文档中所说,Marshal.dump 本身就是支持直接写入到字符串的,因此 Marshal.load 自然也支持直接从字符串读取。所以你什么额外操作都不用做,只需要对这个字符串进行 Marshal.load 即可。
s = Marshal.dump($game_temp) s1 = Marshal.load(s) p s1 # => 恰好是 $game_temp 的内容
s = Marshal.dump($game_temp)
s1 = Marshal.load(s)
p s1 # => 恰好是 $game_temp 的内容
在这里补充 Marshal.dump 的用法
Marshal.dump(obj [, port][, limit])
Marshal.dump(obj [, port][, limit])
表示将对象 obj 写入端口 port 中,递归写入的最大层数是 limit。这里的 port 可以是个 IO 实例,也可留空表示输出到字符串。当省略这个参数时,Marshal.dump 的返回值就是一个字符串。 |