zapis danych do pliku z memo

0

Witam;
mam taką procedurke zapisująca mi dane do pliku .txt z pola Memo:

procedure TForm1.Button3Click(Sender: TObject);
var
  TF : TextFile;
  i : Integer;
begin
  AssignFile(TF,extractfilepath(application.exename)+'dane.txt' );
  try
    Rewrite(TF);
    for I := 0 to Memo1.Lines.Count do
      Writeln(TF, Memo1.Lines[i]);
      showmessage('Zapisano w pliku: dane.txt');
  finally
    CloseFile(TF);
  end;
end;

chciałbym teraz zapisywac do pliku co druga linie z pola memo i tu sie pojawia problem bo w delphi w pętli for nie ma kroku tak jak w C.
Ktoś wie jak sobie z tym poradzic.?
Pozdrawiam

0
if i mod 2=1 then conitnue;

Może rusz głową ;)

0

Możesz użyć pętli

while ('cos tam') do
end;
repeat
until ('cos tam');
0

Najprościej będzie chyba tak, jak poniżej. Bo po co męczyć się z TextFile, jak istnieje wygodna klasa TStringList do tego, a skoro i tak piszesz pod VCL, bo widzę użycie klasy TApplication, to dlaczego by sobie nie ułatwić innymi klasami, dostępnymi w standardowo dodawanych do sekcji uses modułach.

var
  I : integer;
  AFile : string;
  SL : TstringList;
begin
  SL := TstringList.Create;
  AFile := ExtractFilePath(Application.ExeName) + 'dane.txt';
  for I := 1 to Memo1.Lines.Count do
  begin
    if not Odd(I) then
      SL.Add(Memo1.Lines[I - 1]);
  end;
  try
    SL.SaveToFile(AFile);
    ShowMessage('Zapisano do: ' + AFile);
  finally
    SL.Free;
  end;
end;
0
olesio napisał(a)
  try
    SL.SaveToFile(AFile);
  finally
    SL.Free;
    ShowMessage('Zapisano do: ' + AFile);
  end;

Lepiej to zmienić tak:

  try
    SL.SaveToFile(AFile);
    ShowMessage('Zapisano do: ' + AFile);
  finally
    SL.Free;
  end;

1 użytkowników online, w tym zalogowanych: 0, gości: 1