Delphi-PRAXiS
Seite 1 von 3  1 23      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi SaveDialog/OpenDialog - abspeichern und laden von Variablen (https://www.delphipraxis.net/122935-savedialog-opendialog-abspeichern-und-laden-von-variablen.html)

fui-tak 24. Okt 2008 13:25


SaveDialog/OpenDialog - abspeichern und laden von Variablen
 
Hallo,
Nachdem ich nach einigem googlen nichts gefunden habe, hab ich mich mal hier angemeldet und stelle meine Frage hier.
Ich bin noch Delphi-Anfänger und bastel gerade an einem Spiel herum. Ich benutze Delphi 4 Professional

Nun möchte ich eine Speicherfunktion einbauen, heißt also ich muss eine Reihe an Variablen abspeichern und diese wieder laden können.

Wie mache ich das am besten? Oder gibt es sogar eine Möglichkeit einfach den aktuellen Programmstatus zu speichern?
Ich bedanke mich schonmal im vorraus

ATSV 24. Okt 2008 13:28

Re: SaveDialog/OpenDialog - abspeichern und laden von Variab
 
hi
wenn du nur Variablen speichern möchtest dann sollte das mit einer ganz normalen Ini- oder Textdatei wunderbar funktionieren

fui-tak 24. Okt 2008 13:56

Re: SaveDialog/OpenDialog - abspeichern und laden von Variab
 
Das hab ich mir auch schon vorgestellt, nur hab ich keine Ahnung wie das mit dem speichern generell geht.

b00gie 24. Okt 2008 14:06

Re: SaveDialog/OpenDialog - abspeichern und laden von Variab
 
Delphi-Quellcode:
procedure Speichern();
var
  save:TStringList;
begin
  save:=TStringList.Create;
  with save do
  begin
    Add('String1');
    Add('Strgin2');
    ....
  end;
  save.SaveToFile('C:\test.txt');
  save.Free;
end;

Das ganze würde auch besser gehen, ich weiss ja nicht wie du speichern möchtest, aber wenn deine Textdatei ungefähr so aussehen soll:

******
STRING1=jaja
STRING2=nönö
STRING3=blabla
....
*******

dann würde ich das so speichern

Delphi-Quellcode:
var
  save:TStringList
begin
  save:=TStringList.Create;
  save.Values['STRING1']:='jaja';
  save.Values['STRING2']:='nönö';
  ...
  save.SaveToFile(..);
  save.Free;
end;
Bei save.Values['STRING1']:='jaja'; würde dann in der Datei STRING1=jaja rauskommen^^

ATSV 24. Okt 2008 14:08

Re: SaveDialog/OpenDialog - abspeichern und laden von Variab
 
für ne ini datei
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
  Ini: TIniFile;
begin
  Ini := TIniFile.Create('DeineDatei.ini');
  try
    Ini.WriteInteger('Section1', 'Variable1', v1);
  finally
    Ini.Free;
  end;
end;
dazu muss man dann noch die Unit "IniFiles" einbinden.

edit:
@b00gie: dann nehm doch direkt ne ini :wink:

b00gie 24. Okt 2008 14:09

Re: SaveDialog/OpenDialog - abspeichern und laden von Variab
 
so und um nun das ganze zu laden

Delphi-Quellcode:
var
  load:TStringList;
begin
  load:=TStringList.Create;
  load.LoadFormFile(...);
  VARIABLE1:=load.Values['STRING1'];
  VARIABLE2:=load.Values['STRING2'];
  ....
  load.Free;
end;

Fussball-Robby 24. Okt 2008 14:10

Re: SaveDialog/OpenDialog - abspeichern und laden von Variab
 
Zum Thema Inis gibts einige Tutorials, zum Beispiel hier oder hier.

Edit:
Zitat:

Zitat von ATSV
@b00gie: dann nehm doch direkt ne ini :wink:

Genau, warum das Rad neu erfinden? :thumb:

DeddyH 24. Okt 2008 14:13

Re: SaveDialog/OpenDialog - abspeichern und laden von Variab
 
Kleine Anmerkung noch:
Zitat:

Delphi-Quellcode:
Ini := TIniFile.Create('DeineDatei.ini'); //das ist ein relativer Pfad

Auf jeden Fall absolute Pfade verwenden, sonst findet man die Ini u.U. nicht wieder.

ATSV 24. Okt 2008 14:18

Re: SaveDialog/OpenDialog - abspeichern und laden von Variab
 
Zitat:

Zitat von DeddyH
Kleine Anmerkung noch:
Zitat:

Delphi-Quellcode:
Ini := TIniFile.Create('DeineDatei.ini'); //das ist ein relativer Pfad

Auf jeden Fall absolute Pfade verwenden, sonst findet man die Ini u.U. nicht wieder.

Das ist mehr oder weniger Geschmackssache natürlich sind absolute Pfade "sicherer" aber ich z.B. vergess immer wo die Datei liegt und bin zu faul um in den Sourcen zu gucken :P Deshalb nehm ich eigentlich immer relative Pfade.

DeddyH 24. Okt 2008 14:20

Re: SaveDialog/OpenDialog - abspeichern und laden von Variab
 
Damit setzt Du Dich aber in die Nesseln. Bei relativen Pfaden wird im aktuellen Verzeichnis gespeichert, und das muss nicht unbedingt das Programmverzeichnis sein.


Alle Zeitangaben in WEZ +1. Es ist jetzt 16:55 Uhr.
Seite 1 von 3  1 23      

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