AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

File of record speichern

Ein Thema von TH3LL · begonnen am 24. Okt 2006 · letzter Beitrag vom 28. Okt 2006
Antwort Antwort
Seite 2 von 2     12   
TH3LL

Registriert seit: 25. Jan 2006
22 Beiträge
 
Delphi 6 Enterprise
 
#11

Re: File of record speichern

  Alt 27. Okt 2006, 16:36
Hmm.. ich speichere auch einen Record der ein dynamisches array eines weiteren records beinhaltet...
Wenn ich versuche das herkömmlich zu speichern sind in der datei nur 2 bytes.. Muss ich das alles einzeln abspeichern?
  Mit Zitat antworten Zitat
Hansa

Registriert seit: 9. Jun 2002
Ort: Saarland
7.554 Beiträge
 
Delphi 8 Professional
 
#12

Re: File of record speichern

  Alt 27. Okt 2006, 17:18
Zitat von Sunlight7:
Abgesehen davon, das der Typ Real Out ist, wäre es zu empfehlen, ein Packed Record zu verwenden.
Sonst kann's mal mit dem Compilerschalter {$A+} etwas weh tun.
Genau. Deshalb verwendet man aber auch kein "packed" record, denn dann braucht man kein $A. Die Diskettenzeiten sind rum. Aber eine Frage noch : wieso ist der Typ "real" out ? Die Zahlentypen wurden oft genug angepasst.
Gruß
Hansa
  Mit Zitat antworten Zitat
Klaus01

Registriert seit: 30. Nov 2005
Ort: München
5.768 Beiträge
 
Delphi 10.4 Sydney
 
#13

Re: File of record speichern

  Alt 27. Okt 2006, 18:47
Ein record, hat feste Datensätze und Datenlängen.
Von einem dynamischen Array werden wohl nur die Adressen gespeichert.
Und die sind wenn Du sie wieder einließt recht wenig wert.

Auf eine feste Datensatzstruktur, magst DU dich nicht festlegen?

Grüße
Klaus
Klaus
  Mit Zitat antworten Zitat
Benutzerbild von Jens Schumann
Jens Schumann

Registriert seit: 27. Apr 2003
Ort: Bad Honnef
1.644 Beiträge
 
Delphi 2009 Professional
 
#14

Re: File of record speichern

  Alt 27. Okt 2006, 20:41
Zitat von KeMa:
Hallo zusammen,

kann mir auch jemand sagen wie ich dieses Format speichern und öffnen kann?

Delphi-Quellcode:
Type TField = record
     Field : array of String [50]
end;

Type TDatSet = record
     DatSet : array of TField;
     DatExt : array of TField;
     DSFLength : Longword;
     DEFLength : Longword;
     DSLength : Longword;
     Name : String [20];
     Date : String [10];
end;

Type TDBFrame = record
     Data : array of TDatSet;
     System : array of TDatSet;
     DatLength : Longword;
     SysLength : Longword;
     Name : String[20];
end;

Var

DBFrame : TDBFrame;
Isch werd noch amol blöd mit Ding hier...
Beim Speichern wird der Autor sicherlich mit der Anzahl der TField über das Array iterieren und die Records einzeln abspeichern.
Beim Auslesen musst Du genau das gleiche machen. Nur musst Du wissen wieviel Records von TField kommen. Dir Information ist bestimmt irgendwo gespeichert. Deshalb musst Du mit den Felder experimentieren, die Length enthalten. Darin ist bestimmt die Anzahl der Records in DatSet und so gespeichert.

[edit=alcaeus]Delphi-Tags im zitierten Beitrag eingefuegt. Mfg, alcaeus[/edit]
I come from outer space to save the human race
  Mit Zitat antworten Zitat
TH3LL

Registriert seit: 25. Jan 2006
22 Beiträge
 
Delphi 6 Enterprise
 
#15

Re: File of record speichern

  Alt 28. Okt 2006, 09:56
Ich habs so gelöst, dass ich Die Datei in der gespeichert werden soll manuell zusammenstelle. Also zuerst die Fixen datenwerte nach der Reihe, und am Ende eine beliebig Lange Liste eines Arrays an Datensätzen. Vor jedem dieser Arrays dann natürlich eine Angabe, wieviele Werte ausgelesen werden sollen.

Aber mir ist aufgefallen, das funktioniert nur mit einer file of "Recordtyp", wenn du nur Daten des Typs "Recordtyp" hast. Denn eine datei die ich als File of Real beschreibe, und dann um einen String hinzuzufügen als file of string öffne enthält nurnoch kauderwelsch.
Gibt es vielleicht eine praktischere Lösung verschiedene Datentypen in einer Datei abzuspeichern, als alles durch den gleichen Typ (in dem Falle string) auszudrücken?
  Mit Zitat antworten Zitat
Benutzerbild von Jens Schumann
Jens Schumann

Registriert seit: 27. Apr 2003
Ort: Bad Honnef
1.644 Beiträge
 
Delphi 2009 Professional
 
#16

Re: File of record speichern

  Alt 28. Okt 2006, 10:47
Zitat von TH3LL:
Gibt es vielleicht eine praktischere Lösung verschiedene Datentypen in einer Datei abzuspeichern, als alles durch den gleichen Typ (in dem Falle string) auszudrücken?
Ja die gibt es. Das Stichwort heißt: Streams
I come from outer space to save the human race
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:40 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz