Reading files with comments with FasterCSV

Hi,

I'm trying to read csv files using FasterCSV.
I have two problems:

1. Some of my files have a few lines of comments before the actual header.
Is there a way to read the whole file at once, for example with
csv = FasterCSV.read("filename", opt)
and have the comment lines ignored (either by telling FasterCSV to ignore the first n lines or giving FasterCSV a string or regular expression to match the beginning of the header).

2. Some of my files have no header, but I still would like to read them as a FasterCSV::Table, rather than an Array of Arrays for ease of column access and auto-conversion.
How can I do that and is there a way to add a header?

Thanks,
Armin

Hi,

Hello.

I'm trying to read csv files using FasterCSV.
I have two problems:

1. Some of my files have a few lines of comments before the actual header.
Is there a way to read the whole file at once, for example with
csv = FasterCSV.read("filename", opt)
and have the comment lines ignored (either by telling FasterCSV to ignore the first n lines or giving FasterCSV a string or regular expression to match the beginning of the header).

There's no way to get FasterCSV to skip the line. I know one other person has made this request in the past though, so it may be an option we need to look at adding.

In the meantime, just skip them manually and hand FasterCSV the IO object:

csv = open("filename") do |io|
   # code to skip io ahead to the start of the CSV here...
   FCSV.new(io, opt).read
end

2. Some of my files have no header, but I still would like to read them as a FasterCSV::Table, rather than an Array of Arrays for ease of column access and auto-conversion.
How can I do that and is there a way to add a header?

Yes, FasterCSV will accept an Array of headers to use (:headers => [:one, :two, ...]).

Hope that helps.

James Edward Gray II

ยทยทยท

On May 23, 2007, at 1:54 PM, Armin Armbruster wrote: