http://www.perlmonks.org?node_id=1012715


in reply to Using encoding

Add binmode $output; right after opening the CSV file for writing. For example:

use strict; use warnings; my $string = ''; open my $output, '>:encoding(utf8)', 'out.txt' or die $!; binmode $output; print $output $string; close $output;

Contents of out.txt:

Contents of out.txt without binmode $output;:

£

Replies are listed 'Best First'.
Re^2: Using encoding
by vsespb (Chaplain) on Jan 11, 2013 at 17:59 UTC
    It's more correct to write:
    use strict; use warnings; use utf8; my $string = ''; open my $output, '>:encoding(utf8)', 'out.txt' or die $!; #binmode $output, ":encoding(utf8)"; print $output $string; close $output;
    (with or without 'binmode $output, ":encoding(utf8)"' but without 'binmode $output;')