X-Git-Url: http://git.equinoxoli.org/?p=migration-tools.git;a=blobdiff_plain;f=csv_ripper;h=99c4ff00eba63f674145ea2cd015a8cd91530e8a;hp=bf787ffacedea7394885660a6e230800606c5c2e;hb=9e967d7a4207176f0778f0e296ab39d8223eb431;hpb=6c25f0626b026e59b9051c31d3eddfb6105f3c56 diff --git a/csv_ripper b/csv_ripper index bf787ff..99c4ff0 100755 --- a/csv_ripper +++ b/csv_ripper @@ -1,5 +1,21 @@ #!/usr/bin/perl +# Copyright 2009-2012, Equinox Software, Inc. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + # TODO # # * add getopt support @@ -14,15 +30,16 @@ use warnings; use Text::CSV; -my $csv = Text::CSV->new(); +my $csv = Text::CSV->new( {binary => 1}); open CSV, '<', shift or die "Can't open file $!\n"; while () { $csv->parse($_); + die "Bad data on line $.\n$_\n" if ($csv->error_diag); my @chunks = $csv->fields; my @out = (); - for (@ARGV) - { push @out, $chunks[$_]} + for my $chunk (@ARGV) + { push @out, $chunks[$chunk] } print join("\t", @out), "\n"; }