Thread Unicode::MapUTF8 - UTF-8 nach ISO-8859-15 konvertieren (22 answers)
Opened by Glühbirne at 2011-06-24 10:09

Gast Glühbirne
 2011-06-24 10:09
#149904 #149904
Wie der Threadname schon impliziert, ich möchte unter Ubuntu eine Datei mit Perl einlesen, die UTF-8-kodiert ist, und in das Format ISO-8859-15 bringen. Einladen und Sichern klappt hervorragend, aber an der Konvertierung scheitert es - ich verwende das CPAN-Modul Unicode::MapUTF8 und folgenden Code:

Code (perl): (dl )
$input=from_utf8({-string=>$input,-charset=>'iso8859-15'}) or die "Data could not be converted!\n";


Ich habe mir schon mit utf8_supported_charset sämtliche unterstütze Zeichensätze ausgeben lassen, ISO-15 wird also unterstützt. Aber wenn ich die Datei öffne, sind meine Umlaute weg - wohlgemerkt, sie sind nicht falsch konvertiert, sondern einfach nicht da.

Ich habe auch schon:

Code (perl): (dl )
1
2
3
4
5
6
7
8
9
10
11
open my $IN,'<:encoding(utf-8)','input.txt';
open my $OUT,'>:encoding(iso-8859-15)','output.txt';

my $line;
while($line=<$IN>)
{
        print $OUT $line;
}

close IN;
close OUT;


ausprobiert, aber hier bekomme ich bei jedem Umlaut folgende Fehlermeldung:

utf8 "\xF6" does not map to Unicode at MeinSkript.pl line 13, <$IN> line 36.

Ich bin ziemlich ratlos ... ein Kollege meinte bereits, dass er schon Probleme mit Unicode::MapUTF8 gehabt hat und konnte mir keine Lösung verraten. Vielleicht sieht es hier ja anders aus ...

modedit Editiert von GwenDragon: Titel um Modulname erweitert
Last edited: 2011-06-24 14:13:52 +0200 (CEST)

View full thread Unicode::MapUTF8 - UTF-8 nach ISO-8859-15 konvertieren