Schrift
Wiki:Tipp zum Debugging: use Data::Dumper; local $Data::Dumper::Useqq = 1; print Dumper \@var;
[thread]8954[/thread]

Auswertung Dateitype/Format (Bin, Unicode, UTF-8)

Leser: 1


<< >> 4 Einträge, 1 Seite
zieglerch
 2007-04-27 19:45
#76308 #76308
User since
2006-04-26
23 Artikel
BenutzerIn
[default_avatar]
Hallo zusammen,

ich stehe vor einem Problem das Konfigfiles auf verschiedenen Servern in dem gleichen Format sein sollten, aber eine händische Stichprobe ergeben hat diese haben unterschiedliche Formate.

Einfaches überschreiben oder erneutes rauskopieren der Konfigdatei geht nicht da die files alle verschieden Inhalt haben.

Also muss ich mit Perl die Files abklappert und irgendwie rausfinden, ist es ein BIN File, in Unicode oder in UTF-8 geschrieben. Könnte auch sein das es noch mehr Formate gibt die auf den Servern rumliegen.

Wie kann ich das Fileformat rausbekommen, sind übrigens alles nur ein paar KB Files (Textfiles).
GwenDragon
 2007-04-27 20:14
#76309 #76309
User since
2005-01-17
14787 Artikel
Admin1
[Homepage]
user image
Die ersten Bytes einer Datei sollten doch Auskuft über den Typ geben.
Stichwort MagicBytes.
ptk
 2007-04-27 20:41
#76310 #76310
User since
2003-11-28
3645 Artikel
ModeratorIn
[default_avatar]
Unicode kann man nicht erkennen, da man Dateien nicht als "Unicode" speichern kann. Was geht, ist ein Encoding wie utf-8, utf-16, ucs-4 oder iso-8859-1. Wahrscheinlich verwechselst du utf-16 und Unicode.

Du kannst z.B. Encode::Guess verwenden, um z.B. zwischen utf-8 und iso-8859-1/ascii zu unterscheiden. Oder selbst Heuristiken schreiben, z.B. versuchen, eine Datei in einem Encoding einzulesen und statistische Untersuchungen machen.

Manchmal gibt es auch BOMs, dann ist das Encoding recht eindeutig.

Als binär könnte man eine Datei bezeichnen, die auf kein anderes Encoding passt und Bytes im Bereich unterhalb 32 (außer Newline und so) und zwischen 128 und 159 hat.
GwenDragon
 2007-04-27 20:47
#76311 #76311
User since
2005-01-17
14787 Artikel
Admin1
[Homepage]
user image
Für Konfigurationsdateien ist es beispielsweise sinnvoll, in der ersten "Zeile" sowas wie
# -*- type: xml; coding: utf-8 -*-
Dann wird das leben später einfacher.
Ansonsten gibt es immer noch file unter Un*x. Aber das verwendet auch nur die Muster /etc/magic.
<< >> 4 Einträge, 1 Seite



View all threads created 2007-04-27 19:45.