Thread Korrekter Umgang mit Fileencodings
(3 answers)
Opened by pinwheel at 2015-07-11 12:56
Hallo zusammen,
ich muss eine Textdatei, von der das Fileencoding für mich im Vorfeld nicht bekannt ist, einlesen und verarbeiten. Versucht habe ich es (Minimalbsp) mit folgendem Code: Code: (dl
)
1 #!/usr/bin/env perl Die Datei test.txt könnte nun aber ISO-8859 oder UTF-8 codiert sein - beides kann auftreten. Wenn ich nun - wie oben gezeigt Code: (dl
)
open($test_handle, "<:encoding(UTF-8)", "$test_file"); verwende und test.txt ist UTF-8 codiert - läuft alles nach Wunsch. Ist dann aber text.txt ISO-8859 codiert, bekomme ich Fehler der Art Code: (dl
)
utf8 "\xD6" does not map to Unicode at ./test.pl line 11, <$test_handle> line 73. Wie gehe ich dieses Problem an? Eine erschwerende Randbedingung könnte sein, dass nach Möglichkeit keine zusätzlichen Module verwendet werden sollen und die benötigte Perl-Version auch nicht zu neu sein darf (<= 5.10). Bekommt man das irgendwie in den Griff? --pinwheel Last edited: 2015-07-11 14:57:58 +0200 (CEST) |