Delphi World - это проект, являющийся сборником статей и малодокументированных возможностей  по программированию в среде Delphi. Здесь вы найдёте работы по следующим категориям: delphi, delfi, borland, bds, дельфи, делфи, дэльфи, дэлфи, programming, example, программирование, исходные коды, code, исходники, source, sources, сорцы, сорсы, soft, programs, программы, and, how, delphiworld, базы данных, графика, игры, интернет, сети, компоненты, классы, мультимедиа, ос, железо, программа, интерфейс, рабочий стол, синтаксис, технологии, файловая система...
TStringList в TIniFile

Летит компьютер с 9-го этажа, и думает: "Вот бы щас зависнуть... "


uses Classes;

type
  TIniStringlist = class( TStringList )
  public
    procedure LoadFromIni(const FileName, Section: string);
    procedure SaveToIni(const FileName, Section: string);
end;

implementation

uses
  IniFiles, SysUtils;

procedure TIniStringList.LoadFromIni(const FileName, Section: string);
var
  index: Integer;
  Line: string;
begin
  with TIniFile.Create( FileName ) do
    try
      ReadSectionValues( Section, Self);
      for index:= 0 to Count - 1 do
      begin
        { Удаляем имя идентификатора ...}
        Line:= Values[ IntToStr( index ) ];
        { Удаляем тильду ... }
        System.Delete( Line, 1, 1);
        Strings[ index ]:= Line;
      end;
    finally
      Free;
    end;
end;

procedure TIniStringList.SaveToIni( const FileName, Section: string);
var
  index: Integer;
  Line: string;
begin
  with TIniFile.Create( FileName ) do
    try
      EraseSection( Section );
      for index:= 0 to Count - 1 do
      begin
        { Сохраняем белые пробелы, пустые строки ...}
        Line:= '~' + Strings[ index ];
        WriteString( Section, IntToStr( index ), Line);
      end;
    finally
      Free;
    end;
end;

end.

Применение:


var
  L: TIniStringList;
begin
  L := TIniStringList.Create;
  L.LoadFromIni('MyFile.Ini', 'Alati'); {Загружаем L..}
  L.Free;
end.

Проект Delphi World © Выпуск 2002 - 2004
Автор проекта: ___Nikolay