Binär-Daten im Netz Einlesen



  • Hi, ich brauche ein Skript, mit dem ich binäre Dateien lesen kann...

    Das sieht etwa so aus:
    Ich hab ein JavApplet, dass sendet eine Anfrage an ein Skript, worauf das Skript eine "Antwort" in Form einer Datei schickt.
    Die Antwort liest das Skript aus einer binären Datei aus.
    Das klappt mit Java ganz gut, so kann ich das Skript aufrufen und die "Antwort" einfach mit einem Daten-Strom lesen.

    Allerdings habe ich mit PHP Probleme die binär-Dateien zu lesen...
    Habe das so versucht:

    function getI($fp) {
      $i1 = ord(fread($fp,1));
      $i2 = ord(fread($fp,1));
      $i3 = ord(fread($fp,1));
      $i4 = ord(fread($fp,1));
      return ( $i1 + $i2*256 + $i3*256^2 + $i4*256^3 );
    }
    

    Hat aber nicht geklappt, da in PHP alle Bytes von 0-32 als 0 eingelesen werden.
    Also wenn ich eine 10 binär in der Datei stehen habe, dann bekomme ich eine 0!
    Wenn ich eine 50 da stehen habe, dann bekomme ich auch eine 50!

    Daher scheint PHP dafür nicht geeignet zu sein!
    Jetzt hab ich davon gehört, mit C kompilierte Exes in CGI umzunennen und zu verwenden, scheint aber angeblich auf einem Linux-Rechner eh nicht zu funktionieren!

    Also daher nun meine Frage:
    Was wäre die beste Art von Skript, die ich verwenden sollte um binäre Dateien einzulesen???

    Vielen Dank!!
    Gruss, Tobias



  • Eigentlich sollte das aber doch klappen, denn bei fread steht in der Doku: "Binary-safe file read"



  • Hello Everybody,

    I found this place a couple of days ago and I really like the articles here Therefore I decided to sign up.
    So thank you

    black ass


Anmelden zum Antworten