The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.


Convert::Recode - make mapping functions between character sets


  use Convert::Recode qw(ebcdic_to_ascii);

  while (<>) {
     print ebcdic_to_ascii($_);


The Convert::Recode module can provide mapping functions between character sets on demand. It depends on GNU recode to provide the raw mapping data, i.e. GNU recode must be installed first. The name of the mapping function is constructed by taking the names of the two charsets and joining them with the string "_to_". For example, if you want to convert between the "mac" and the "latin1" charsets, just import the mac_to_latin1() function.

If you prefix the function name with "strict_", any characters that cannot be mapped are removed during transformation. For instance, the strict_mac_to_latin1() function converts a string to latin1 and removes all mac characters that do not have a corresponding latin1 character.

Running the command recode -l should give you the list of available character sets.


© 1997,2003 Gisle Aas. All rights reserved.

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

1 POD Error

The following errors were encountered while parsing the POD:

Around line 108:

Non-ASCII character seen before =encoding in '©'. Assuming CP1252