我正在尝试学习如何使用CSV,并且出于所有意图和目的,我的代码应该可以工作(主要是因为我直接遵循教程演练)。但是,我不断收到错误消息,说明我的语法错误。我想知道我的mac终端上是否有ruby 1.8,或者我必须安装的gem。基本上它是说我的header: true
是错误的语法。这是我的代码和随后的错误。
require "csv"
puts "EventManager initialized."
contents = CSV.open "event_attendees.csv", headers: true, :header_converters :symbol
contents.each do |row|
name = row[:first_name]
puts name
end
但是,每次运行它都会出现此错误。
lib/event_manager.rb:4: syntax error, unexpected ':', expecting $end
...event_attendees.csv", headers: , :header_converters :symbol
任何人都知道最新情况或我应该做什么/
答案 0 :(得分:0)
这是你传递哈希参数打开的方式。传递哈希值时需要保持一致。
尝试:
contents = CSV.open "event_attendees.csv", headers: true, header_converters: :symbol
或(旧式)
contents = CSV.open "event_attendees.csv", :headers => true, :header_converters => :symbol