Thread Datei auf UTF-8 prüfen, wie?
(4 answers)
Opened by rinoin at 2007-05-16 20:09
Hallo du!
Habs selbst noch nie gebraucht, aber soweit ich die Man-Page verstehe, sollte das in etwa so gehen: Code (perl): (dl
)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 #!/usr/bin/perl use strict; use warnings; use Encode::Guess; my $file = "c:\deine\datei"; my $data; # Datei öffnen open(FILE, '<', $file) or die "Fehler beim Öffnen von $file : $!\n"; # Zeilen-Trenner quasi auf undef setzen, damit kannst du die komplette Datei in einen Skalar lesen - siehe perldoc perlvar unter INPUT_RECORD_SEPARATOR { local $/; $data = <FILE>; } close(FILE); # Das Modul die Kodierung erraten lassen, wobei du sagst, dass du nur UTF-8 haben willst. my $decoder = guess_encoding($data, qw/utf8/); # Falls Encode::Guess eine Referenz zurückgibt, scheint es sich um UTF-8 zu handeln if (ref $decoder) { print "Datei scheint in UTF-8 vorzuliegen\n"; } else { print "Datei scheint kein UTF-8 zu sein.\n"; } Ich hoffe mal, das passt so halbwegs. Habs nur mal auf die Schnelle runtergetippt, ohne was zu testen. Edit: Hab den Type bei "use warnings;" mal gefixt.\n\n <!--EDIT|nepos|1179348604--> |