赞 | 7 |
VIP | 866 |
好人卡 | 185 |
积分 | 32 |
经验 | 130059 |
最后登录 | 2024-10-29 |
在线时间 | 3618 小时 |
Lv3.寻梦者 双子人
- 梦石
- 0
- 星屑
- 3185
- 在线时间
- 3618 小时
- 注册时间
- 2009-4-4
- 帖子
- 4154
|
本帖最后由 hys111111 于 2012-7-8 16:10 编辑
Marshal.load(file)是读取Marshal.dump($game_system, file)
也就是说它装载的时候组成一个数组,
但是读取必须按照装载顺序读取。Marshal.load(Zlib::Inflate.inflate(strings[0]))除外。
load_data是读取数据库或文本,是全部读取。
如果还看不明白的话,就看下面的:
RGSS 中定义有以下内部函数。
load_data(filename)
读取 filename 指定的数据文件,重建对象。
$data_actors = load_data("Data/Actors.rxdata")
这个函数基本上和 File.open(filename, "rb") { |f|
obj = Marshal.load(f)
}
相同,但读取加密档案文件内部的文件时会有所不同。
save_data(obj, filename)
向 filename 指定的数据文件里写入对象 obj。
save_data($data_actors, "Data/Actors.rxdata")
这个函数和 File.open(filename, "wb") { |f|
Marshal.dump(obj, f)
}
相同。但是其不会在游戏中使用,仅作为和 load_data 相对应的函数而定义。 |
|