Einzelnen Beitrag anzeigen

Benutzerbild von nicodex
nicodex

Registriert seit: 2. Jan 2008
Ort: Darmstadt
286 Beiträge
 
Delphi 2007 Professional
 
#39

Re: Unbekanntes Dateiformat einlesen

  Alt 19. Dez 2008, 09:17
Zitat von ryLIX:
Ich müsste ja ein Array erstellen wo ich jeder Variable einen Eintrag zuweise damit ich das dann abarbeiten kann.
Aber wie kann ich den String mit den enthaltenen Variablen so zerlegen das ich dann weiß was im case Angesprochen wird?
Code:
{L}LWW{B}(B)(A)B
Der Einfachheit halber würde ich den Datenblock in einen Stream schreiben, und hintereinander die Daten einlesen (L = LongWord, W = Word, B = Byte, S = #0-terminierter String). Der Aufwand liegt in der Gruppierung mit Klammern. Ich gehe davon aus, dass es sich bei (xyz) um eine Liste handelt - also dürfte selbige mit einer Anzahl beginnen (wahrscheinlich Byte). Damit man alles über einen Kamm scheren kann, kann man sich eine rekursive Funktion schreiben, die bei einem "(" die Länge liest, die entsprechende ")" sucht und den enthaltenen Ausdruck wieder mit dieser Funktion einliest. Dazu kann man sich beim Start eine Länge von 1 und () um den gesamten Ausdruck "denken".
Was {x} bedeutet kann ich nicht abschätzen, da in den von dir gelieferten Daten immer nur ein Wert enthalten ist (Können es mehrere sein? Und wenn ja, warum werden sie parallel zu () verwendet?).
  Mit Zitat antworten Zitat