Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Assignfile- einfaches "Laden" und "Speichern" (https://www.delphipraxis.net/79497-assignfile-einfaches-laden-und-speichern.html)

Spynx 23. Okt 2006 21:40


Assignfile- einfaches "Laden" und "Speichern&
 
Hallo,
ich habe shcon viel gesucht, gelesen, probiert, aber ich schaffe es eifnach nicht. Folglich bitte ich nun hier um Hilfe :)

Ich möchte, dass mein programm den "edit1.text" beim ändern speichert, und beim nächsten laden des progs wieder lädt, sprich den alten Wert wieder einträgt.


für die meisten sicherlich hier ein Kleinigkeit, aber ich schaffs leider net...
Vielen Dank schonmal

Spynx

mkinzler 23. Okt 2006 21:44

Re: Assignfile- einfaches "Laden" und "Speich
 
Dann wäre eine Ini-datei besser geeignet.

HalloDu 23. Okt 2006 21:45

Re: Assignfile- einfaches "Laden" und "Speich
 
Du könntest es so anlegen:
In Form1.Close:
Delphi-Quellcode:
var F: TextFile;
begin
 AssignFile(F,'Save.txt');
 Rewrite(F);
 WriteLn(F, Edit1.Text);
 CloseFile(F);
end;
Und in Form1.Activate:
Delphi-Quellcode:
var F: TextFile;
begin
 AssignFile(F,'Save.txt');
 Reset(F);
 ReadLn(F, Edit1.Text);
 CloseFile(F);
end;
Dann wird der Inhalt in die Datei Save.txt im gleichen Ordner wie die Exe geschrieben.

Gug dir aber auch mal Tutorial zum Thema an.

semo 23. Okt 2006 21:55

Re: Assignfile- einfaches "Laden" und "Speich
 
schließe mich mkinzler an: inifile verwenden

Spynx 23. Okt 2006 22:08

Re: Assignfile- einfaches "Laden" und "Speich
 
das steht jetzt im Quelltext

procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
var F: TextFile;
begin
AssignFile(F,'Save.txt');
Rewrite(F);
WriteLn(F, Edit1.Text);
CloseFile(F);
end;




procedure TForm1.FormActivate(Sender: TObject);
var F: TextFile;
begin
AssignFile(F,'Save.txt');
Reset(F);
ReadLn(F, Edit1.Text);
CloseFile(F);
end;


in der save.txt steht nun auch der text drin, wies soll, ellerding wird beim öffnen das edit feld nicht ausgefüllt.. ??

ps.: kennt evtl wer zu diesem Thema tutorials?

edit: aufmal kann er das prog nichtmehr compilen ?!? auchd as gespeicherte nicht.
es wird diese zeile markiert
ReadLn(F, Edit1.Text);
und gesagt, [Fehler] Unit1.pas(284): Der linken Seite kann nichts zugewiesen werden

Sunlight7 23. Okt 2006 22:57

Re: Assignfile- einfaches "Laden" und "Speich
 
Du kannst das nicht direkt machen...
Beispiel:
Delphi-Quellcode:
var s:String;
begin
...
   ReadLn(F, s);
   Edit1.Text:=s;
...

semo 23. Okt 2006 23:28

Re: Assignfile- einfaches "Laden" und "Speich
 
über ini ist das ganze einfacher zu handhaben:

Delphi-Quellcode:
procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
var
  aIniFile : TIniFile;
begin
  aIniFile := TIniFile.Create(ExtractFilePath(Application.ExeName) + 'Edit1Content.ini');
  aIniFile.WriteString('Sektionsname', 'Edit1.Text', Edit1.Text);
  aIniFile.Free;
end;

procedure TForm1.FormCreate(Sender: TObject);
var
  aIniFile : TIniFile;
begin
  aIniFile  := TIniFile.Create(ExtractFilePath(Application.ExeName) + 'Edit1Content.ini');
  Edit1.Text := aIniFile.ReadString('Sektionsname', 'Edit1.Text', '');
  aIniFile.Free;
end;
Vor allem kannst du dann bei Bedarf noch weitere Werte speichern und brauchst dir keinen kopf machen in welcher Reihenfolge diese in der Datei stehen.

Spynx 24. Okt 2006 00:10

Re: Assignfile- einfaches "Laden" und "Speich
 
DAAANKE :D

computer-glossar.de, deine Lösung funktioniert einwandfrei :D

Jetzt kann ich beruhigt schlafe, es funktioniert wies's soll, DANKE DANKE DANKE, AN ALLE DIE MIR HELFEN WOLLTEN UND HIER REINGESCHRIEBEN HABEN! DANKESCHÖN :D :hello: :hello: :thumb: :spin: :coder2: :kiss:

Luckie 24. Okt 2006 00:12

Re: Assignfile- einfaches "Laden" und "Speich
 
Bis auf die Tatsache, dass die Ressourcenschutzblöcke fehlen. :?

Sunlight7 24. Okt 2006 00:31

Re: Assignfile- einfaches "Laden" und "Speich
 
[Ironisch]
Ist das nicht schon normal, das die fehlen? :gruebel:
[/Ironisch]

PS: Bitte die Frage nicht mehr als offen markieren.

Edit: Ironisch Tag's eingefügt


Alle Zeitangaben in WEZ +1. Es ist jetzt 07:18 Uhr.
Seite 1 von 2  1 2      

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