Rozszerzenie przy zapisywaniu.

0

Witam,
piszę sobie coś a'la notatnik. Niestety napotkałem na problem z zapisywaniem pliku z rozszerzeniem. Przekopałem helpa i forum i nic nie znalazłem :(. Program wygląda tak, że zapisuje z RichEdit tekst do pliku bez żadnego rozszerzenia. Chciałbym aby program obsługiwał kilka rozszerzeń i nie wiem za bardzo jak to napisać - myślałem o instrukcji case związanej z filter index, ale jakoś nie udało mi się napisać nic działającego - proszę o pomoc. W celu zapisu chcę użyć procedur SaveToFile i ChangeFileExt np.
RichEdit1.Lines.SaveToFile(ChangeFileExt(NazwaPliku,rozszerzenie));
gdzie jak łatwo poznać rozszerzenie ma zostać wybrane wcześniej z filtra SaveDialog.

Pozdrawiam i z góry dziękuję za pomoc.

0
erbs napisał(a)

Witam,
piszę sobie coś a'la notatnik. Niestety napotkałem na problem z zapisywaniem pliku z rozszerzeniem. Przekopałem helpa i forum i nic nie znalazłem :(. Program wygląda tak, że zapisuje z RichEdit tekst do pliku bez żadnego rozszerzenia. Chciałbym aby program obsługiwał kilka rozszerzeń i nie wiem za bardzo jak to napisać - myślałem o instrukcji case związanej z filter index, ale jakoś nie udało mi się napisać nic działającego - proszę o pomoc. W celu zapisu chcę użyć procedur SaveToFile i ChangeFileExt np.
RichEdit1.Lines.SaveToFile(ChangeFileExt(NazwaPliku,rozszerzenie));
gdzie jak łatwo poznać rozszerzenie ma zostać wybrane wcześniej z filtra SaveDialog.

Pozdrawiam i z góry dziękuję za pomoc.

Hej :)

1.) Spróbuj skorzystać z właściwości DefaultExt komponentu SaveDialog. Pozwala on na ustalenie domyślnego rozszerzenia, w którym program ma zapisywać dokument.

2.) Być może:

procedure SaveDoc();
begin
  if SaveDialog.Execute() then
  begin
    case SaveDialog.FilterIndex of
      0: RichEdit.Lines.SaveToFile(ChangeFileExt(SaveDialog.FileName, '.txt'));
      1: RichEdit.Lines.SaveToFile(ChangeFileExt(SaveDialog.FileName, '.ini'));
    end;
  end;
end;

It should do the trick ;)

Hope That Helps,
patrick14 [soczek]

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