in reply to The future of Text::CSV_XS - TODO
Small updates
I now understand the fuzz people make about embedded newlines. Text::CSV_XS has always been able to deal with that (well, maybe not always, but at least for a long time already). The problem that people might have is reading the line in the perl script. Obviously,
my $csv = Text::CSV_XS-New ({ binary => 1 }); while (<>) { $csv->parse ($_); my @fields = $csv->fields ();
Will horribly fail, as <> will break too early.
The most recent snapshot now contains a t/45_eol.t, that tests all possible eol combinations. Have a look to see that the way to parse CSV with embedded newlines should be done similar to:
use IO::Handle; my $csv = Text::CSV_XS->new ({ binary => 1, eol => $/ }); while (my $row = $csv->getline (*ARGV)) { my @fields = @$row;
or, if you open files yourself, like:
my $csv = Text::CSV_XS->new ({ binary => 1, eol => $/ }); open my $io, "<", $file or die "$file: $!"; while (my $row = $csv->getline ($io)) { my @fields = @$row;
I'm still thinking about the best way to add this to the docs.
|
---|
Replies are listed 'Best First'. | |
---|---|
Re^2: The future of Text::CSV_XS - TODO
by tfrayner (Curate) on May 30, 2007 at 18:51 UTC | |
by Tux (Canon) on May 30, 2007 at 22:55 UTC | |
by tfrayner (Curate) on May 31, 2007 at 09:32 UTC | |
by Tux (Canon) on May 31, 2007 at 10:39 UTC | |
by tfrayner (Curate) on May 31, 2007 at 14:49 UTC |