NOCHMALS: Problem beim Einlesen von Dateien (Perl)
Stefan Bach
Hallo nochmals!
Der letzte Tip hat das Problem nicht gelöst. Ich möchte mit diesem Script:
--
#!/usr/bin/perl
binmode SAVEGAME;
open(SAVEGAME, "<$ARGV[0]") || die "Savegame nicht gefunden!";
while(($Zeichen = getc(SAVEGAME)) ne "")
{
print "$Zeichen";
}
close(SAVEGAME);
--
eine Datei einlesen, in der mitten in der Datei der HEX Wert 00 vorkommt. Der Anfang der Datei sieht folgendermaßen aus:
--
HEX |6D|69|73|73|69|6F|6E|20|31|32|20|2F|20|65|6E|64
ASCII |m |i |s |s |i |o |n | |1 |2 | |/ | |e |n |d
------------------------------------------------------
HEX |65|0D|0A|00|1A|FD|07|83|C0|88|F5|82|04|00|00|00
ASCII |e |. |. |. |. |² |. |â |+ |ê |_ |é |. |. |. | .
------------------------------------------------------
HEX |48|87|F5|82|04|00|00|00|C0|88|F5|82|0C|00|00|00
ASCII |H |ç |_ |é |. |. |. |. |+ |ê |_ |é |. |. |. |.
--
Ich kann die Datei aber nur bis [...]ende.. einlesen, da danach der HEX Wert 00 vorkommt welcher als Dateiende angesehen wird.
Wie kann ich die Datei trotzdem mit Perl (Java, QBasic, VisualBasic) einlesen?
Gruß
Stefan
Hallo nochmals!
eine Datei einlesen, in der mitten in der Datei der HEX Wert 00 vorkommt. Der Anfang der Datei sieht folgendermaßen aus:
--
HEX |6D|69|73|73|69|6F|6E|20|31|32|20|2F|20|65|6E|64
ASCII |m |i |s |s |i |o |n | |1 |2 | |/ | |e |n |dHEX |65|0D|0A|00|1A|FD|07|83|C0|88|F5|82|04|00|00|00
ASCII |e |. |. |. |. |² |. |â |+ |ê |_ |é |. |. |. | .HEX |48|87|F5|82|04|00|00|00|C0|88|F5|82|0C|00|00|00
ASCII |H |ç |_ |é |. |. |. |. |+ |ê |_ |é |. |. |. |.Ich kann die Datei aber nur bis [...]ende.. einlesen, da danach der HEX Wert 00 vorkommt welcher als Dateiende angesehen wird.
Achso, sorry, die Laenge der Datei hast Du ja. (Perl)
$size = (stat($filename)) [7] ;
oder so. Dann brauchst Du nur noch eine forschleife,
die mitzaehlt , bis eben $sie erreicht ist.
Gruesse
srm.
Wie kann ich die Datei trotzdem mit Perl (Java, QBasic, VisualBasic) einlesen?
Gruß
Stefan