大佬教程收集整理的这篇文章主要介绍了在Ruby中读取CSV时,如何跳过标题行?,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
CSV
课程可以很容易地遍历每一行:
CSV.foreach(filE) { |row| puts row }
但是,这总是包括标题行,所以我会得到作为输出:
header1,header2 foo,bar baz,yak
我不想要标题.现在,当我打电话给…
CSV.foreach(file,:headers => truE)
我得到这个结果:
#<CSV::row:0x10112e510 @header_row = false,attr_reader :row = [ [0] [ [0] "header1",[1] "foo" ],[1] [ [0] "header2",[1] "bar" ] ] >
当然,因为文档说:
但是,如何跳过标题行,将行作为一个简单的数组返回?我不希望返回复杂的CSV :: Row对象.
我绝对不想这样做:
first = true CSV.foreach(filE) do |row| if first puts row first = false else # code for other rows end end
包装的字符串和IO的主要读取方法是从数据源中提取的一行,并将其解析并返回为字段数组(如果不使用标题行)
一个例子:
require 'csv' # CSV FILE # name,surname,LOCATIOn # Mark,Needham,Sydney # David,Smith,London def parse_csv_file_for_names(path_to_csv) names = [] csv_contents = CSV.read(path_to_csv) csv_contents.shift csv_contents.each do |row| names << row[0] end return names end
以上是大佬教程为你收集整理的在Ruby中读取CSV时,如何跳过标题行?全部内容,希望文章能够帮你解决在Ruby中读取CSV时,如何跳过标题行?所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。