我有一个文件,其中第一行是无用的行,第二行是标题.问题是,当我循环遍历文件时,它会计算这些行.有没有办法使用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)
我没有基准测试,但试试这个:
CSV.to_enum(:foreach, filename, col_sep: "\t").drop(2).each do |row|
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
692 次 |
| 最近记录: |