use Parse::CSV; use Data::Dump 'pp'; my $fh = new IO::File('failing.csv', 'r'); my $fail = do { local $/; <$fh> }; pp $fail; # Print input $fh->seek(0,0); $/ = "\r\n"; my $parser = Parse::CSV->new( handle => $fh, csv_attr => { binary => 1 }, ); print pp $_ while $_ = $parser->fetch; # Print output #### "a,b,c,d,e,f,g\r\na,b,c,\"kkkk\n\",d,e,f,g\r\n" ["a" .. "g"]["a", "b", "c", "kkkk\n", "d" .. "g"]