Einzelnen Beitrag anzeigen

PierreB
(Gast)

n/a Beiträge
 
#12

Re: Unterschiedliche Daten speichern u. auslesen

  Alt 24. Jun 2005, 10:25
Zitat von turboPASCAL:
So ? (Code nicht getestet, nur mal so getippt)

Delphi-Quellcode:
procedure TFormX.LoadFromFile;
var
  afile: textfile;
  i, lb1Count, lb2Count: integer;
  s: string;
begin
  assignfile(afile, 'dateiname.ext');
  reset(afile);
  readln(afile, s);
  if s <> 'MyFileIdentthen
  begin
    showmessage('Nicht meine Datei, wird nicht geladen!');
    exit;
  end;
  readln(afile, s); // Load Edit 1
  edit1.text := s;
  readln(afile, s); // Load Edit 2
  edit2.text := s;
  readln(afile, lb1Count); // Anzahl der Listbox1 Einträge lesen
  readln(afile, lb2Count); // Anzahl der Listbox2 Einträge lesen
  listbox1.Clear;
  for i := 0 to lb1Count-1 do // Load Listbox 1
  begin
    readln(afile, s);
    listbox1.items.add(s);
  end;
  listbox2.Clear;
  for i := 0 to lb2Count-1 do // Load Listbox 2
  begin
    readln(afile, s);
    listbox2.items.add(s);
  end;
  closefile(afile);
end;

procedure TFormX.SaveToFile;
var
  afile: textfile;
  i: integer;
begin
  assignfile(afile, 'dateiname.ext');
  rewrite(afile);
  writeln(afile, 'MyFileIdent');
  writeln(afile, edit1.text); // Save Edit 1
  writeln(afile, edit2.text); // Save Edit 2
  writeln(afile, listbox1.items.count); // Anz. der Listbox1 Einträge sp.
  writeln(afile, listbox2.items.count); // Anz. der Listbox2 Einträge sp.
  for i := 0 to listbox1.items.count-1 do // Save Listbox 1
    writeln(afile, ListBox1.Items.Strings[i]);
  for i := 0 to listbox2.items.count-1 do // Save Listbox 2
    writeln(afile, ListBox1.Items.Strings[i]);
  closefile(afile);
end;
[5-mal bearbeitet, durchkorrigiert und müsste so laufen]
Moin turboPASCAL,

dankeschön, dein Code funktioniert wirklich gut.
Nur ein Fehler tritt auf: Beim Laden wird in ListBox2 die Daten von ListBox1 geladen. Also die Daten der Listbox2 tauchen irgendwie nicht mehr auf.


Auf jeden Fall schonmal vielen Dank,
  Mit Zitat antworten Zitat