Horst: binäre Dateiausgabe

Beitrag lesen

Hallo,

» Jow, dann definiere erst einmal, nur für Dich, was eine "binäre Datei" ist. Evntl. helfen dann die Funktionen pack() und unpack() weiter?

habe ich mir schon angesehen: Soweit ich das mit meinen bescheidenen PERL-Kenntnissen verstehe und auch ausprobiert habe, erhält man hier erst wieder einen HEX-String (z.B. "FE02CD"). Aber wenn ich diesen in eine DAtei schreibe steht dort drin nicht (hexadezimal) "FE 02 CD" (3 Byte) sondern jeweils der ASCII Wert der einzelnen Zeichen, also 6 Byte.

Es braucht Weile, die pack() und unpack() Funktionen zu verstehen, ich muss da auch ab und zu in das Kochbuch schauen, weil ich diese Funktionen selten verwende.

Hier mal ein Beispiel, was einen 32-bit-binary-string in eine 32-bit-integer Zahl umwandelt:

  
sub bin2dec{  
 my $bin = shift;  
 return unpack("N", pack("a32", $bin));  
}  

Viele Grüße,
Horst Haselhuhn