![]() |
TStringList bearbeiten
Hey Leute, mal wieder eine Frage von mir...^^
Ich lade eine Textdatei in eine StringList, ersetze mit StringReplace einige Teile des Inhalts und will nun noch vor jede Zeile ein bestimmtes Wort haben. Beispiel: Vorher:
Code:
Nachher:
String
String String
Code:
Also vor jede Zeile soll ein und dasselbe Wort eingefügt werden.
Asd String
Asd String Asd String Kann man das realisieren, wenn ja wie? MfG 0nk3lz |
Re: TStringList bearbeiten
Delphi-Quellcode:
var
s : Tstringlist; I: Integer; begin s := TStringlist.Create; for I := 0 to s.Count - 1 do begin s[i] := 'asd'+ s[i]; end; end; |
Re: TStringList bearbeiten
Danke, funktioniert!!!
Also Schwachstelle Nummer 1 sind bei mir echt die Schleifen... Da muss ich nochmal ein bisschen lernen... :) |
Re: TStringList bearbeiten
theoretisch ginge auch etwas in dieser Richtung:
Delphi-Quellcode:
(eventuell müßte dann noch die letzte Zeile gelöscht werden ... ich min mir grad nicht sich ob Text immer mit CRLF endet und somit eine Zeile dazukäme)
sl.Text := 'asd' + StringReplace(sl.Text, sLineBreak, sLineBreak + 'asd', [rfReplaceAll]);
// aka sl.Text := 'asd' + StringReplace(sl.Text, #13#10, #13#10 + 'asd', [rfReplaceAll]); Bei einer normalen Stringlist wäre dieses aber langsamer unr würde mehr Speicher verbrauchen, da die TStringList/TStrings die Strings einzelnen verwaltet und diese erst zu einem Text zusammengesetzt und dann wieder getrennt werden müssen. Wärend aber bei einem TMemo (Lines ala virtueller TStringList) die Strings im Memo alle zusammen sind und somit die einzelne Bearbeitung der Strings wiederum langsamer wäre, da dort ja erst jeder einzel String aus dem Text herausgelöst und danach dort wieder eingefügt werden müßte. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 11:51 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz