Autor Beitrag
Herbert
Hält's aus hier
Beiträge: 13



BeitragVerfasst: Fr 27.12.02 20:24 
Ich habe mir eine Datenbank mit dyn.Arrays und Records geschrieben.
Wie kann ich jetzt diese mit dem Entsprechenden Dialogen diese öffnen bzw. speichern.

Würde mich über jede Hilfe freuen!
Christian S.
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 20451
Erhaltene Danke: 2264

Win 10
C# (VS 2019)
BeitragVerfasst: Sa 28.12.02 20:16 
Was genau verstehst Du denn unter den "entsprechenden Dialogen"? Beschreibe doch mal genauer, was Du eigentlich machen willst!

_________________
Zwei Worte werden Dir im Leben viele Türen öffnen - "ziehen" und "drücken".
Herbert Threadstarter
Hält's aus hier
Beiträge: 13



BeitragVerfasst: Sa 28.12.02 21:44 
Ich möchte, dass ich, wenn ich die Datenbank speichere, ein Speicherndialog kommt. Wenn ich lade, dann der öffnen dialog. Die Datenbank habe ich geschafft zu schreiben, jetzt möchte ich aber, dass ich es öffnen und speichern kann. Nur ich weiß nicht wie :oops: :( :cry:
Keldorn
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 2266
Erhaltene Danke: 4

Vista
D6 Prof, D 2005 Pro, D2007 Pro, DelphiXE2 Pro
BeitragVerfasst: Sa 28.12.02 22:21 
Hallo

hast du dir schon mal die Registerkarte Dialoge und dort Open und Savedialog angeschau?

schau in der onlinehilfe opendialog.execute nach dort ist auch ein kleines Besipiel

Mfg Frank

_________________
Lükes Grundlage der Programmierung: Es wird nicht funktionieren.
(Murphy)
Christian S.
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 20451
Erhaltene Danke: 2264

Win 10
C# (VS 2019)
BeitragVerfasst: Sa 28.12.02 22:23 
Ach so!

Also, zuerst einmal musst Du Dir eine Datei definieren, in der Du Dein Record speichern kannst. Also, wenn Dein Recordtyp TDaten heißt, kannst Du Dir so einen Dateitypen definieren, der diese Daten aufnehmen kann:
ausblenden Quelltext
1:
VAR datei : File of TDaten;					


Das Lesen einer Datei geht so:
ausblenden Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
VAR daten : ARRAY OF TDaten;
begin
  AssignFile(datei,'c:\test.dat');
  {$I-}
  Reset(datei);
  {$I+}
  IF IOResult = 0 THEN
  while not EOF(datei) DO
  begin
    SetLength(daten, Length(daten)+1);
    ReadLn(datei,daten[High(daten)]);
  end;  
  CloseFile(datei);
end;


So, das Schreiben einer Datei geht eigentlich fast genauso:
ausblenden Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
VAR daten : ARRAY OF TDaten;
       i : INTEGER;
begin
  AssignFile(datei,'c:\test.dat');
  ReWrite(datei); //ACHTUNG! Bereits in der Datei vorhandene Daten
                         //gehen verloren!
  IF IOResult = 0 THEN
  for i:=0 TO High(daten) do
  Write(datei,daten[i]);
  CloseFile(datei);
end;


Den OpenDialog und den SaveDialog zu benutzen, ist nicht schwer. Mit Execute rufst Du beide aus, diese Funktion gibt dir mit einem Boolean auch direkt zurück, ob er erfolgreich zu Ende gebracht wurde, oder ob der Benutzer abgebrochen hat. In der Eigenschaft Filename ist nach Erfolg der Dateiname zum Öffnen oder Speichern hinterlegt.

MfG,
Peter

P.S.: Die Quelltexte sind nicht getestet und ich habe das schon lange nicht mehr gemacht. Also können noch Fehler drin sein. Bei gravierenden einfach nachfragen.

_________________
Zwei Worte werden Dir im Leben viele Türen öffnen - "ziehen" und "drücken".