phpbar.de logo

Mailinglisten-Archive

[php] Re2: [php] HILFE beim Lesen von HEX-Werten

[php] Re2: [php] HILFE beim Lesen von HEX-Werten

Waldemar Moll wmoll_(at)_mail.terranet.de
Fri, 25 Feb 2000 00:49:39 +0100


Einfaches Beispiel:
In der Datei steht:
0a 00 00 00 00 00 00 00 0c f3 00 00

Da Programme in der Regel bei Schreiben von "4-Byte Wörtern"  
nach dem Schema Low-Byte - High-Byte vorgehen steht also die 
Zahl 0000f30c in der auszulesenden Datei wie folgt: 0c f3 00 00.
Ich gehe also wie folgt an das Auslesen:

$fd=fopen($savefile,"r");
fseek($fd,8);
$c = fread( $fd, 4 );
fclose($fd);

Tja , und nun versagt mein PHP-Latein :-)
Egal was ich auch versuche - HEXDEC funzt nicht.
Zerlegen und neu ordenen funzt nicht.

Ich komme einfach nicht auf den Strahl wie ich es hinbekomme, 
dass PHP aus den gelesenen 4 Bytes die richtige Dezimalzahl
schreibt. *verzweifel*

Es würde ja schon genügen wenn dann auch in dem gelesenen 
String wenigstens "0cf30000" stehen würde - aber nichtmal das tut 
so sein.
Wenn ich ein echo "$c<br>\n" mache gibt der Server wirre Zeichen 
via Apache(linux) zum Browser wenn überhaupt - meistens steht 
da nix drin ausser heisse Luft.

Bin für jeden Hinweis SEEEEHHHHR  dankbar, da rtfm leider in 
diesem Falle auch nicht weiterhalf.

Gruesse
-wm



On 22 Feb 00, at 12:54, Tobias Ratschiller wrote:

> > Er interpretiert das nicht als Hex-Wort sondern als "wirren" String
> > und weil "00" drin vorkommt, mag er garnicht.
> > Das gleiche ist der Fall, wenn ich das File Byteweise einlese und
> > versuche einfach mit "$wort =$byte[1].$byte[2].$byte[3].$byte[4]"
> > eine Auswertung hinzubekommen - läuft ebenfalls nicht.
> 
> Kannst Du "wirrer String" definieren? Ich sehe das Problem irgendwie nicht.
> Wenn Du eine hexdazimale Zahl einliest (z.B. 3E8), dann wird HexDec() das
> korrekt umrechnen. Liest Du vielleicht die Werte tatsächlich als Tupel durch
> ein Leerzeichen getrennt ein? In dem Fall musst Du natürlich vor der
> Umrechnung das Leerzeichen rausnehmen.
> 
> Mit freundlichen Grüßen,
>   Tobias Ratschiller
> 
> 
> -- 
> ** Durchgehend geöffnet: http://www.php-center.de **
> Die PHP-Liste: mailto:php_(at)_infosoc.uni-koeln.de
> http://infosoc.uni-koeln.de/mailman/listinfo/php
> 




php::bar PHP Wiki   -   Listenarchive