设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 2276|回复: 11
打印 上一主题 下一主题

[已经解决] 请问一下怎么把string类型的marshal直接读取

[复制链接]

Lv4.逐梦者 (版主)

梦石
0
星屑
9497
在线时间
5073 小时
注册时间
2013-6-21
帖子
3580

开拓者贵宾剧作品鉴家

1
发表于 2019-2-3 23:02:31 | 显示全部楼层
本帖最后由 RyanBern 于 2019-2-3 23:05 编辑

按文档中所说,Marshal.dump 本身就是支持直接写入到字符串的,因此 Marshal.load 自然也支持直接从字符串读取。所以你什么额外操作都不用做,只需要对这个字符串进行 Marshal.load 即可。
RUBY 代码复制
  1. s = Marshal.dump($game_temp)
  2. s1 = Marshal.load(s)
  3. p s1 # => 恰好是 $game_temp 的内容

在这里补充 Marshal.dump 的用法
RUBY 代码复制
  1. Marshal.dump(obj [, port][, limit])

表示将对象 obj 写入端口 port 中,递归写入的最大层数是 limit。这里的 port 可以是个 IO 实例,也可留空表示输出到字符串。当省略这个参数时,Marshal.dump 的返回值就是一个字符串。

点评

明明刚刚测试了一下发现不行的……结果又可以了= =  发表于 2019-2-3 23:20

评分

参与人数 2+2 收起 理由
张咚咚 + 1 认可答案
fux2 + 1 强瞎

查看全部评分

回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2024-5-3 12:02

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表