如何将哈希保存在文件中,稍后在 ruby 中使用它



所以我在大学里遇到了很大的麻烦,因为我被困在我的Ruby代码中的一部分。我只是想不通如何

"如果用户按 2,程序将询问员工编号,然后搜索员工。如果程序找到它,则打印,如果没有,则打印一条消息,说明它没有它。

我的问题是我不确定信息是否直接保存在文件中。但如果是...问题是我所做的哈希没有获取已经保存在文件中的信息,并且只处理它最后收到的信息。

puts "Insert Registration number n"
search = gets.chomp
hash = Hash.new()
hash = {(regnr) => (name)}
hash.each do |key, value|
  puts "#{key} t | t #{value}"
end
search =~ File.new("employees.txt", "r")
if hash.has_key? (search)
  print "The person you were looking for is "
  puts hash [search]
else
  puts "He isn't one of our employees"
end

必须告诉你们,我只编码了一个月,学校对我并不轻松......

我建议使用 yaml .查看 Web 以获取有关使用 YAML 的一些示例。它是一个可以表示哈希的结构化标记。您可以轻松转储和加载简单的 ruby 对象,如哈希和数组。

require 'yaml'
parsed = begin
  employee_hash = YAML.load(File.open("employees.yml"))
rescue ArgumentError => e
  puts "Could not parse YAML: #{e.message}"
end

最新更新