![]() |
Re: Unbekanntes Dateiformat einlesen
Zitat:
Code:
Es gibt also, wie schon erwähnt, eine (1 Byte) Längenangabe der Listen/Arrays (da ein Element nicht nur aus einem Wert bestehen muss, darf man den gesamten Ausdruck pro Element parsen/lesen).
141200| 01 00300000 ,00000000 0100 D602 00 01 00 01 01 68 00 |8B
{00003000},00000000,0001,02D6, {}, (00 01), {68}, {} |
Re: Unbekanntes Dateiformat einlesen
Erkenne ich das richtig das dieses Byte markiert ob die in Klammern gehaltenen Variablen Werte enthalten bzw keine Werte enthalten?
|
Re: Unbekanntes Dateiformat einlesen
Zitat:
{LWB} => Anzahl(Byte), Anzahl * [Wert1(LongWord), Wert2(Word), Wert3(Byte)] |
Re: Unbekanntes Dateiformat einlesen
Ah ok :)
Was meinst du zu der Schleife für die Fallerkennung? HAb grad kein Delphi hier zum testen :/ |
Re: Unbekanntes Dateiformat einlesen
Zitat:
|
Re: Unbekanntes Dateiformat einlesen
Hehe.
Würde für AFormat[x] TStrings ausreichen? Oder müsste das eher eine TStringList sein? |
Re: Unbekanntes Dateiformat einlesen
Zitat:
Wenn man nur einen einzigen Wert braucht, kann man sich die Arbeit aber auch sparen (und alles prozedural runterprogrammieren). |
Re: Unbekanntes Dateiformat einlesen
Mit dieser Aussage verwirrst du mich gerade :gruebel:
Ich glaube ich mache mal Pause mit der Sache und versuche mal mehr über diese Sache zu lernen denn so bringt mich des nich viel weiter :| Hast du eine Empfehlung hinsichtlich einer Seite oder eines Buches was sich mit dieser Art der Datenverarbeitung beschäftigt? Denn den ganzen Tag mit so einem :wiejetzt: rum laufen stört mich.Und da mir dort einfach zuviele Grundlagen fehlen denke ich das ich erst einmal dort ansetzen sollte. |
Re: Unbekanntes Dateiformat einlesen
Zitat:
Zitat:
Zitat:
Jetzt stellt sich eher die Frage, welche Daten du auf welche Arten verwenden willst (ein Tool, welches nur einen Wert ändert, oder eher eine komplette Entwicklungsumgebung zur Bearbeitung und/oder Erstellung der Daten). Wenn du dir darüber im Klaren geworden bist, dann kannst du auch entscheiden, in welcher Form (Schnittstellen, Klassen, Hilfsfunktionen) du die Daten lesen und/oder bearbeiten möchtest. Ohne Konzept brauchst du nicht anfangen :) Zitat:
Das Problem ist eher, dass weder du noch ich in diesem Forum alle Gedanken und Eindrücke ausführlich darlegen können (ohne Romane zu schreiben). Mein vorhin genannter Lösungsansatz geht von Vermutungen aus (wie die Daten von Dir verwendet werden könnten), und ist somit nur eine Möglichkeit von vielen, die durchaus schlecht/ineffektiv für dein Vorhaben sein könnte. Kurz: Wird es ein größeres Projekt, dann denke vorher über die Art und Weise der Datenhaltung und -verwaltung nach. Bei einem kleinen Projekt: Mach das es funktioniert - das reicht. |
Re: Unbekanntes Dateiformat einlesen
Ich hol den Thread noch mal wieder hoch.
Zwar habe ich noch ein wenig an dem Programm gearbeitet aber mit geringem Erfolg. Jetzt bin ich beim Aufräumen wieder darauf gestoßen und wollt mich noch mal wieder ransetzten. Ich hatte um die einzelnen Strukturen zu verarbeiten ein if/else KOnstrukt verwendet welches ich aber recht aufwendig finde. Sprich
Delphi-Quellcode:
Gibt es hier eine Lösung die übersichtlicher und leichter zu warten ist?
if AArgs = 'S' then
//Do something else if AArgs = 'SS' then //Do something else [...] Dann hab ich eine Frage zu dem Pointer (PByte) dieser zeigt auf ein Array Feld (array of Byte). Kann ich den Pointer wie ein Array behandeln oder muss ich dafür ein temporäres Array erstellen (lokales Array). Denn ich müsste hier auf das Array zugrifen können um fest zustellen wann ein neuer Wert anfängt. Denn die werden immer alle direkt nacheinander weitergeleitet. Und wenn ASize(größe des aktuellen Feldes) = 10 und AArgs= 'SS'(2 Strings) ist sind 2 #0 Terminierte Strings enthalten aber via SetString() erhalte ich nur einen nicht beide Strings. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 05:58 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz