Ruby 在程序启动时加载或写入设置
数据是通过以下方式生成的:Ruby 在程序启动时加载或写入设置,ruby,Ruby,数据是通过以下方式生成的: def checkConfigurationsFile 如果File.exist?(“/prefs/settings.conf”)==true configFile=File.read(“./prefs/settings.conf”) options=JSON.parse(配置文件) configData={:multithreading=>options['multithreading'], :systemCores=>options['systemCores']}
def checkConfigurationsFile
如果File.exist?(“/prefs/settings.conf”)==true
configFile=File.read(“./prefs/settings.conf”)
options=JSON.parse(配置文件)
configData={:multithreading=>options['multithreading'],
:systemCores=>options['systemCores']}
主菜单()
elsif File.exist?(“/prefs/settings.conf”)==false
configData={:multithreading=>false,
:systemCores=>1}
configFile=File.open(“./prefs/settings.conf”,“w”)
configFile.write(JSON.pretty_生成(configData))
configFile.close
checkConfigurationsFile()
其他的
“出了严重的问题!”
结束
结束
这是一个设置菜单:
def openPreferences
puts如果您不想到处传递配置,那么您需要将其设置为全局。有几种方法可以做到这一点
例如,只需将所有configData
替换为$configData
。轰,搞定了。但这可能是不赞成的
或者,更“专业”的方法是使用某种全局单例配置对象
大概是这样的:
class ConfigData
class << self
attr_accessor :multi_threading, :system_cores
end
end
你让我开心。谢谢你!
# write at startup
ConfigData.system_cores = options['systemCores']
# read in another place
ConfigData.system_cores