在Ruby中更新YAML文件
发布时间:2020-12-17 04:24:23 所属栏目:百科 来源:网络整理
导读:我的班级是: class Mycfg @@options = {} def init @@options = YAML.load_file(Dir.pwd + PATH) end def set(key,val) @@options[key] = val end def get(key) @@options[key] end def save endend 使用这个类: oj = Mycfg.newoj.initif oj.get 'name' ==
我的班级是:
class Mycfg @@options = {} def init @@options = YAML.load_file(Dir.pwd + PATH) end def set(key,val) @@options[key] = val end def get(key) @@options[key] end def save end end 使用这个类: oj = Mycfg.new oj.init if oj.get 'name' == 'tom' oj.set 'changed',Data.now end oj.save YAML文件: name : tom pawd : 123456 version : 0.0.1 created : 2011-10-24 changed : 2011-10-24 如果某些内容发生了变化,如何完成方法保存以更新YAML文件? 解决方法
这是一个班轮.
w将文件截断为0长度并写入,就像它是一个新文件一样. options_hash是@@选项的当前值. 您将需要一个getter / accessor来检索完整的哈希值.如果您将@@ options作为实例变量而不是类变量,则只需执行attr_accessor:options,然后使用oj.options检索它. File.open(Dir.pwd + PATH,'w+') {|f| f.write(options_hash.to_yaml) } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |