#!perl use strict; use warnings; use Text::CSV_XS; my $dat_file = <new({ sep_char => "\x{14}", quote_char => "\x{fe}", escape_char => "\x{fe}", eol => $/, binary => 1, keep_meta_info => 1, auto_diag => 1, }); open my $dat_fh, '<:encoding(UTF-8)', \$dat_file; binmode STDOUT, ':encoding(UTF-8)'; while (my $row = $dat->getline($dat_fh)) { my $r = $.; for my $c (1 .. @$row) { my $is_quoted = $dat->is_quoted($c - 1) ? 'Is Quoted' : 'Is Not Quoted'; print "Row $r, Col $c $is_quoted: $row->[$c - 1]\n"; } } $dat->eof() or $dat->error_diag(); close $dat_fh; exit 0;