Einzelnen Beitrag anzeigen

nahpets
(Gast)

n/a Beiträge
 
#10

Re: Leerzeilen in Tstringlist

  Alt 30. Jul 2009, 11:02
Hallo,

auch wenn schon eine Lösung da ist, mal ein anderer Ansatz: (bin halt mal wieder langsamer als DeddyH )

Zuerst alle Leerzeilen löschen und dann alles hinter 'Serien Termine' löschen.
Dazu nehmen wir eine Funktion, um das alles nicht mehrfach implementieren zu müssen.

Delphi-Quellcode:
function MachLeerWeg(Eingabe : TStrings) : String;
begin
  // Damit sind alle Leerzeilen weg.
  for i := Eingabe.Count - 1 DownTo 0 do if Eingabe[i] = 'then Eingabe.Delete(i);
  // Nun prüfen, ob die Zeichenfolge 'Serien Termine' vorhanden ist:
  if Pos('Serien Termine',Eingabe.Text) > 0 then begin
    repeat
      Eingabe.Delete(Eingabe.Count - 1);
    until Eingabe[Eingabe.Count - 1] = 'Serien Termine';
  end;
  if (Eingabe.Count > 0) and (Eingabe[Eingabe.Count - 1]) = 'Serien Terminethen begin
    Eingabe.Delete(Eingabe.Count - 1);
  end;
  Result := Eingabe.Text;
end;
Im Programm dann so aufrufen:
Delphi-Quellcode:
procedure TForm1.SpeichernClick(Sender: TObject);
begin
  Zwischenspeicher.Clear;
  Zwischenspeicher.Add('Montag');
  Zwischenspeicher.Add(MachLeerWeg(Memo1.Lines));
  Zwischenspeicher.Add('Dienstag');
  Zwischenspeicher.Add(MachLeerWeg(Memo2.Lines));
  Zwischenspeicher.Add('Mittwoch');
  Zwischenspeicher.Add(MachLeerWeg(Memo3.Lines));
  Zwischenspeicher.Add('Donnerstag');
  Zwischenspeicher.Add(MachLeerWeg(Memo4.Lines));
  Zwischenspeicher.Add('Freitag');
  Zwischenspeicher.Add(MachLeerWeg(Memo5.Lines));
  Zwischenspeicher.Add('Samstag');
  Zwischenspeicher.Add(MachLeerWeg(Memo6.Lines));
  Zwischenspeicher.Add('Sonntag');
  Zwischenspeicher.Add(MachLeerWeg(Memo7.Lines));
  Zwischenspeicher.SaveToFile(Textdatei);
end;
(Das ist jetzt nur so hingedaddelt und nicht getestet.)
  Mit Zitat antworten Zitat