I got the error "wide character in print at IO/Handle.pm line 399" and solved it in a not nice way by using an object as a hash reference. Perhaps there is a better way.
Here is what I have : use MARC::File::XML ( BinaryEncoding => 'utf8', RecordFormat => 'UNIMARC' ); use MARC::Batch; use MARC::Record; my $file_out = MARC::File::XML->out($filename_out ); my $fh = $file_out->{'fh'}; binmode $fh , ":utf8"; ... $dynamic_record->encoding('UTF-8'); $file_out->write( $dynamic_record );