Einzelnen Beitrag anzeigen

Benutzerbild von Pr0g
Pr0g

Registriert seit: 21. Mai 2004
809 Beiträge
 
Delphi 7 Personal
 
#4

Re: Zeilenumbruch in ini dateien

  Alt 22. Mär 2005, 14:06
Ich mache es so, dass ich alle Zeilen mit einem Trennzeichen zu einem String zusammenfügen:
Delphi-Quellcode:
function GetIniString(const ABreak: String; const AStrings: TStrings): String;
var
  i: Integer;
begin
  Result := '';
  for i := 0 to AStrings.Count - 1 do
  begin
    if i > 0 then
      Result := Result + ABreak;
    Result := Result + AStrings[i];
  end;
end;

procedure GetIniStringList(const ABreak: String; AString: String; var AStrings: TStrings);
var
  p: Integer;
begin
  AStrings.Clear;
  while Pos(ABreak, AString) > 0 do
  begin
    p := Pos(ABreak, AString) - 1;
    AStrings.Add(Copy(AString, 1, p));
    Delete(AString, 1, p + Length(ABreak));
  end;
  AStrings.Add(AString);
end;
Und hier der Aufruf:
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
  s: String;
begin
  s := GetIniString('[~#~]', Memo1.Lines);

  //s in Ini Speichern
end;

procedure TForm1.Button2Click(Sender: TObject);
var
  s: String;
  SL: TStrings;
begin
  //s aus Ini auslesen

  SL := TStringList.Create;
  try
    GetIniStringList('[~#~]', s, SL);
    Memo1.Lines := SL;
  finally
    SL.Free;
  end;
end;
MfG Pr0g
  Mit Zitat antworten Zitat