AGB  ·  Datenschutz  ·  Impressum  







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

Daten "schlau" in eine Dateispeichern

Ein Thema von Snoop007 · begonnen am 9. Aug 2004 · letzter Beitrag vom 13. Aug 2004
Antwort Antwort
Seite 2 von 3     12 3      
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.202 Beiträge
 
Delphi 10.4 Sydney
 
#11

Re: Daten "schlau" in eine Dateispeichern

  Alt 10. Aug 2004, 11:04
So 10 MB kommt hin.
Da sind ja auch noch Beispiele und einige MB Hilfedateien dabei.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
Snoop007

Registriert seit: 15. Jan 2003
331 Beiträge
 
Delphi 6 Personal
 
#12

Re: Daten "schlau" in eine Dateispeichern

  Alt 10. Aug 2004, 11:13
ich habe dann die befürchtung, dass das programm wieder überdemensional wächst

mal ab von (desktop )datenbanken, mir geht es nur um den schnellen zugriff auf die gespeicherten daten wenn ich z.b. daten als eine strukturierte datei speichere, wie könnte ich den zugriff auf einen datenblock, der z.b. als index deklariert wurde, optimieren ?
  Mit Zitat antworten Zitat
Benutzerbild von lume96
lume96

Registriert seit: 14. Sep 2003
Ort: Rognac/Marseille - Frankreich
128 Beiträge
 
Delphi 7 Professional
 
#13

Re: Daten "schlau" in eine Dateispeichern

  Alt 10. Aug 2004, 11:24
Hi,

ich benutze für diese Zwecke meistens SQLite. Es wird nur eine DLL (SQLite.dll) von zirka 220kb benötigt.

Bin bis jetzt (nur kleinere Projekte) immer sehr gut damit gefahren.

MfG
Lutz
Lutz Meyer
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.202 Beiträge
 
Delphi 10.4 Sydney
 
#14

Re: Daten "schlau" in eine Dateispeichern

  Alt 10. Aug 2004, 11:37
Zitat von Snoop007:
ich habe dann die befürchtung, dass das programm wieder überdemensional wächst
Ein paar 100 kByte werden es schon

Zitat von Snoop007:
mal ab von (desktop )datenbanken, mir geht es nur um den schnellen zugriff auf die gespeicherten daten wenn ich z.b. daten als eine strukturierte datei speichere, wie könnte ich den zugriff auf einen datenblock, der z.b. als index deklariert wurde, optimieren ?
Da habe ich kein Eisen im Feuer. Schon Jahre nichts mehr ohne DB, Ini oder XML gemacht.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
ripper8472

Registriert seit: 17. Aug 2003
275 Beiträge
 
#15

Re: Daten "schlau" in eine Dateispeichern

  Alt 10. Aug 2004, 12:48
ja wie greifst du denn auf deine strukturierten dateien zu?
file of TMyRecord ist doch nicht sooo langsam
Christoph
char l[]="\xd6N\x96\xa6\xe6\xce.\xa6\xe4\xce\x04N\x86\xae\ xce\xfc",I,*i=l-1;for(;I=3,*i
++;){while(*i=*i&~(1<<I|1<<7-I)|(*i&1<<I)<<7-2*I|(*i&1<<7-I)>>7-2*I,I--);}puts(l);
  Mit Zitat antworten Zitat
Snoop007

Registriert seit: 15. Jan 2003
331 Beiträge
 
Delphi 6 Personal
 
#16

Re: Daten "schlau" in eine Dateispeichern

  Alt 10. Aug 2004, 13:01
da ich strukturierte dateien benutzen möchte, und keine typerisierten, benutze ich keinen typen

das problem ist, das die daten in einer liste gespeichert sind, vom prinzip ok, aber wie könnte ich die daten gut abspeichern damit ich recht schnell auf einzelne datenblöcke zugreifen kann ?
ich dachte schon an eine baumstruktur allerding ist mir die realisierung nicht ganz so klar
  Mit Zitat antworten Zitat
ripper8472

Registriert seit: 17. Aug 2003
275 Beiträge
 
#17

Re: Daten "schlau" in eine Dateispeichern

  Alt 11. Aug 2004, 00:55
eine gut strukturierte datei hat schon etwas von einem dateisystem oder eine datenbank.
-> google mal nach linux dateisystemen, das ist recht informativ

wenn du verschieden große datensätze hast, dann würd ich einen index am anfang bevorzugen, der absolute sprunglängen zu den einzelnen knoten bietet. so brauchst du erstmal nur den index einlesen (mit einem rutsch direkt in den speicher?) und dann bei bedarf die datensätze rauslesen (open, seek, read, close).
die einzelnen knoten würde ich mit einer längenangabe des jeweiligen datensatzes einleiten, damit du gleich weißt, wieviel du aus der datei lesen musst.

ich weiß allerdings nicht konkret, wie deine datensätze beschaffen sind, also wird das genaue konzept bei dir liegen.
Christoph
char l[]="\xd6N\x96\xa6\xe6\xce.\xa6\xe4\xce\x04N\x86\xae\ xce\xfc",I,*i=l-1;for(;I=3,*i
++;){while(*i=*i&~(1<<I|1<<7-I)|(*i&1<<I)<<7-2*I|(*i&1<<7-I)>>7-2*I,I--);}puts(l);
  Mit Zitat antworten Zitat
Snoop007

Registriert seit: 15. Jan 2003
331 Beiträge
 
Delphi 6 Personal
 
#18

Re: Daten "schlau" in eine Dateispeichern

  Alt 11. Aug 2004, 11:49
ich hatte mir auch überlegt daten mit einem index zu bestücken, allerdings wüsste ich nicht, wie ich das dann abspeichern sollte und wie ich auf die daten zugreifen sollte

ich guck mir das mal in google an
  Mit Zitat antworten Zitat
franktron

Registriert seit: 11. Nov 2003
Ort: Oldenburg
1.446 Beiträge
 
Delphi 10.2 Tokyo Enterprise
 
#19

Re: Daten "schlau" in eine Dateispeichern

  Alt 11. Aug 2004, 13:03
Das ist nciht schwer es gibt 2 möglichkeiten.

1. eine etxra Datei
2. Am Anfang der Datei die grösse des Indexses Speichern z.b. Typ Word also 4 Byte dann den Index und dann die eigentlich Datei
Frank
Tux sein Lieblingsquellcode
While anzfische<TuxSatt do begin
Fisch:=TFisch.Create; Tux.EssenFisch(Fisch); Fisch.Free;inc(anzfische); end;
  Mit Zitat antworten Zitat
Snoop007

Registriert seit: 15. Jan 2003
331 Beiträge
 
Delphi 6 Personal
 
#20

Re: Daten "schlau" in eine Dateispeichern

  Alt 13. Aug 2004, 14:46
ich hab mir nu eine möglichlkeit überlegt, ich speichere den index datensatz komplett nochmal neu ab
aber die lösung finde ich ehrlichgesagt nicht gerade prickelnt, allerdings kann ich so sehr schnell auf die daten zugreifen zumindest auf den index
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 3     12 3      


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 09:57 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