@White_Bambie

Как сохранить содержимое формы в ini — файл?

На форме есть memo, необходимо содержимое memo сохранить в INI- файл, но сделать это через SaveDialog с заданным именем. Затем открыть этот или другой ini с помощью OpenDialog.
  • Вопрос задан
  • 449 просмотров
Решения вопроса 1
tsklab
@tsklab
Здесь отвечаю на вопросы.
Поскольку в сети множество описаний, приведу первое попавшие на русском языке: TIniFile или Работа с INI файлами там же.

Поскольку ini-файл не просто текст, а структура, нужны циклы.
unit
const
  siSection = 'Memo';
  siCount   = 'Count';
  siLine    = 'Line';
…
var f: TIniFile; i: Integer;
begin
  if SaveDialog1.Execute then begin
    f := TIniFile.Create( SaveDialog1.FileName );
    f.WriteInteger( siSection, siCount, Memo1.Lines.Count );
    for i:= 1 to Memo1.Lines.Count
      do f.WriteString( siSection, siLine + IntToStr(i), Memo1.Lines[i-1] );
    f.Free;
  end;
end;
…
var f: TIniFile; i: Integer;
begin
  if OpenDialog1.Execute then begin
    f := TIniFile.Create( OpenDialog1.FileName );
    Memo2.Lines.Clear;
    for i:= 1 to f.ReadInteger( siSection, siCount, 1 )
      do Memo2.Lines.Add( f.ReadString( siSection, siLine + IntToStr(i), '' ));
    f.Free;
  end;
end;
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@kalapanga
А в чём проблема-то?
SaveDialog1.DefaultExt :='ini';
If SaveDialog1.Execute then
  Memo1.Lines.SaveToFile(SaveDialog1.FileName);
Ну и читать аналогично.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы