On 1/5/07, Gregory Brown <gregory.t.brown / gmail.com> wrote: > Have you considered Ruport? > Should have included an example. >> table = Table("foo.csv",:csv_options => { :col_sep => ";" }) >> class Ruport::Data::Record >> def name >> "#{first_name} #{last_name}" >> end >> end => nil >> table.map { |r| r.name } => ["peter pan", "joe loop"]