Thema: Delphi Textinhalt aufsplitten

Einzelnen Beitrag anzeigen

Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.625 Beiträge
 
Delphi 12 Athens
 
#18

AW: Textinhalt aufsplitten

  Alt 16. Mär 2012, 14:18
Das Problem ist bekannt. In neueren Delphi-Versionen gibt es dafür StrictDelimiter, in Delphi 7 leider noch nicht. Da muss man sich dann mit schmutzigen Tricks behelfen.

[edit] Geänderte Version, wieder ungetestet:
Delphi-Quellcode:
procedure VerteileStrings(Quelle, Ziel1, Ziel2: TStrings);
var
  List: TStringlist;
  i: integer;
begin
  Assert(Assigned(Quelle) and Assigned(Ziel1) and Assigned(Ziel2));
  Ziel1.BeginUpdate;
  try
    Ziel1.Clear;
    Ziel2.BeginUpdate;
    try
      Ziel2.Clear;
      List := TStringlist.Create;
      List.Delimiter := ';';
      try
        for i := 0 to Quelle.Count - 1 do
          begin
            List.DelimitedText := StringReplace(Quelle[i], ' ', #255, [rfReplaceAll]);
            if List.Count > 0 then
              Ziel1.Add(StringReplace(List[0], #255, ' ', [rfReplaceAll]));
            if List.Count > 1 then
              Ziel2.Add(StringReplace(List[1], #255, ' ', [rfReplaceAll]));
          end;
      finally
        List.Free;
      end;
    finally
      Ziel2.EndUpdate;
    end;
  finally
    Ziel1.EndUpdate;
  end;
end;
[/edit]
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen

Geändert von DeddyH (16. Mär 2012 um 14:21 Uhr)
  Mit Zitat antworten Zitat