Ruby CSV:如何跳过前两行文件?

big*_*ato 2 ruby csv

我有一个文件,其中第一行是无用的行,第二行是标题.问题是,当我循环遍历文件时,它会计算这些行.有没有办法使用foreach选项跳过2行?我知道readCSV上有一个方法,但是将数据加载到RAM中,如果文件太大,我认为它不会很好地扩展.

但是,如果没有其他选择,我会考虑它.这是我到目前为止:

CSV.foreach(filename, col_sep: "\t") do |row|
  until listings.size == limit
    listing_class = 'Sale'
    address = row[7]
    unit = row[8]
    price = row[2]
    url = row[0]
    listings << {listing_class: listing_class, address: address, unit: unit, url: url, price: price}
  end
end
Run Code Online (Sandbox Code Playgroud)

Nak*_*lon 5

我没有基准测试,但试试这个:

CSV.to_enum(:foreach, filename, col_sep: "\t").drop(2).each do |row|
Run Code Online (Sandbox Code Playgroud)