hi,
Ich lasse mit guess() raten, welches Encoding voriegt. Ist es bereits im
Das ist prinzipiell gut, denn wenn eine Datei zweimal umcodiert wird, gibt das einen GAU für den DAU ;-)
Zum Feststellen, ob alle Zeichen einer Datei UTF-8-codiert sind, würde ich so vorgehen:
-
Eine Liste der Codepoints erstellen
@codepoints = unpack("U*", $file_as_string); -
Diese Liste durchgehen und die Codepoints wieder in UTF-8-Chars verwandeln
foreach my $cp(@codepoints){
$chr = printf("%s", pack("U", $cp)); # nicht $c!!!
$test_string .= $chr;
} -
Vergleiche $test_string mit $file_as_string, wenn beide gleich, sind alle Zeichen in der Datei utf8-codiert. Ansonsten nicht.
Morgen wird getestet ;-)
Gute Nacht,
Hotti