Ruby:从文件中读取行将它们拆分为Struct

时间:2017-11-10 11:55:48

标签: ruby struct readlines

我有一个我想要阅读的文本文件,它以这种格式分隔行 “Item1”,1 “Item2”,34 “Item3”,6 等

我想将该行的每个部分输入到我的Struct的新实例中。我应该用什么语法来实现这个目标?我正在打一个精神墙。

Item = Struct.new(:name, :price)
File.readlines('MASTER_INVENTORY.txt').map do |line|
  Item.new << line.split
end

1 个答案:

答案 0 :(得分:0)

Item = Struct.new(:name, :price)
File.readlines('MASTER_INVENTORY.txt').map do |line|
  line.scan(/"(.*?)",\s*(\S*)/).map do |item, price|
    Item.new(item, price.to_i)
  end
end