#!/usr/bin/perl use strict; use warnings; use utf8; # Text mit Sonderzeichen my $text = 'foo bar bär čar'; # Erzeuge Textdateien mit besonderen Encodings open(my $isoFH, ">:encoding(iso-8859-16)", "iso_8859_16.txt") or die $!; open(my $ibmFH, ">:encoding(ibm-852)", "ibm_852.txt") or die $!; # Schreibe den Text mit den Sonderzeichen in die Dateien # Hinweis: Wenn $text Zeichen enthält, die in den Zielkodierungen nicht # erlaubt sind, kommen Fehler, versuche z.B. 'bır'. print $isoFH $text; print $ibmFH $text; close $isoFH or die $!; close $ibmFH or die $!; # Jetzt die beiden Dateien mit den besonderen Encodings zum Lesen öffnen # Anstelle der gerade erzeugten Dateien kannst Du natürlich auch Deine # eigenen Quelldateien nehmen. open($isoFH, "<:encoding(iso-8859-16)", "iso_8859_16.txt") or die $!; open($ibmFH, "<:encoding(ibm-852)", "ibm_852.txt") or die $!; # Und eine UTF-8-Datei zum Schreiben open(my $uniFH, ">:encoding(utf8)", "utf8.txt") or die $!; # Schreibe den Inhalt der beiden Spezialdateien in die UTF-8-Datei print $uniFH "ISO:\n"; print $uniFH $_ while <$isoFH>; print $uniFH "\nIBM:\n"; print $uniFH $_ while <$ibmFH>; # Öffne die UTF-8-Datei in einem Editor und achte darauf, dass UTF-8 # als Kodierung eingestellt ist. # Alle Zeichen, die es in den beiden besonderen Encodings gibt, sollten # die Prozedur überstanden haben.