Einzelnen Beitrag anzeigen

Benutzerbild von nicodex
nicodex

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

Re: Unbekanntes Dateiformat einlesen

  Alt 8. Dez 2008, 15:03
Zitat von ryLIX:
Schau dir mal den Ahang an vielleicht kannst du damit was Anfangen.
Jupp, kann ich - siehe Anhang.
(ist einfach nur nachprogrammiert, ich hätte diversen Typen/Funktionen/Variablen andere Namen gegeben und anstatt Assign/Reset/Read/Close mit Sicherheit TMemoryStream verwendet (auch für die Analyse der Datenblöcke)).

Kurzer Überblick:
Code:
while (!eof)
{
  uint8_t Size;
  uint16_t ID;
  uint8_t Data[Size];
  uint8_t Checksum; // xor Size,ID,Data[...]
};
Die Interpretation von Data[] hängt von der ID ab:
Code:
// ID(0x0100): // definition block start
// ID(0x0200): // definition block header
// ID(0x0300): // definition name
//      uint16_t ID;
//      uint8_t Name[Size - sizeof(ID)]; // includes '\0'
// ID(0x0400): // definition data_format
//      uint8_t DataFormat[Size]; // includes '\0'
// ID(0x0500): // definition data_names
//      uint8_t DataNames[Size]; // includes '\0'
// ID(0xFF00): // data block start
// ID(<else>): // ID == Definition[x].ID
//      uint8_t Data[Size]; // parse with Definition[x].DataFormat
Für die Implementation von ParseData() bin ich zu faul - viel Spaß
Angehängte Dateien
Dateityp: zip bmw_daten_110.zip (2,3 KB, 9x aufgerufen)
  Mit Zitat antworten Zitat