Ein leichter, eigenständiger StringBuilder für Delphi/Object Pascal.
Entwickelt primär für ältere Delphi-Versionen, die keine TStringBuilder Klasse haben.
- Effizientes String-Aufbauen ohne ständiges Kopieren
- Dynamisches Wachstum des Buffers
- Methoden:
Append(const S: string)→ Strings anhängenAppendChar(C: Char)→ einzelnes Zeichen anhängenToString: string→ fertigen String zurückgeben
- UnterstĂĽtzung fĂĽr Method Chaining
- Robust gegen leere Strings
- Kompatibel mit Delphi 7+ bis Unicode Delphi Versionen (Delphi 2009)
Eigenschaften
FLength: Integer→ Anzahl der aktuell im Buffer gespeicherten Zeichen (intern)
Methoden
-
constructor Create(InitialCapacity: Integer = 16)
Erstellt den StringBuilder.- Wirft eine Exception, wenn
InitialCapacity < 1.
- Wirft eine Exception, wenn
-
function Append(const S: string): TStringBuilder
Hängt den angegebenen String an. Leere Strings werden ignoriert.- Gibt für Method Chaining
SelfzurĂĽck.
- Gibt fĂĽr Method Chaining
-
function AppendChar(C: Char): TStringBuilder
Hängt ein einzelnes Zeichen an.- Gibt für Method Chaining
SelfzurĂĽck.
- Gibt fĂĽr Method Chaining
-
function ToString: string
Gibt den gesamten Inhalt als String zurĂĽck.- Bei leerem Buffer wird
''zurĂĽckgegeben.
- Bei leerem Buffer wird
var
SB: TStringBuilder;
begin
SB := TStringBuilder.Create;
try
SB.Append('Hallo')
.AppendChar(' ')
.Append('Welt')
.AppendChar('!');
ShowMessage(SB.ToString); // "Hallo Welt!"
finally
SB.Free;
end;
end;var
SB: TStringBuilder;
begin
SB := TStringBuilder.Create;
try
SB.AppendChar('A')
.AppendChar('B')
.AppendChar('C');
ShowMessage(SB.ToString); // "ABC"
finally
SB.Free;
end;
end;var
SB: TStringBuilder;
begin
SB := TStringBuilder.Create;
try
SB.Append('Zeichen: ')
.AppendChar('X');
ShowMessage(SB.ToString); // "Zeichen: X"
finally
SB.Free;
end;
end;-
Clear-Methode
Buffer komplett leeren, ohne ein neues Objekt erstellen zu mĂĽssen. -
Properties
Length: aktuelle Länge des InhaltsCapacity: aktuelle Größe des internen Buffers
-
Method Chaining erweitern
RĂĽckgabe vonSelffĂĽr alle Append-Methoden, um Verkettungen zu vereinfachen. -
Unicode-UnterstĂĽtzung
Kompatibilität für Delphi-Versionen ab 2009 (string = UnicodeString). -
Performance-Optimierungen
- Effizientere Verdopplung des Buffers bei sehr groĂźen Strings
-
Weitere Utility-Methoden
Insert→ Zeichen oder Strings an einer beliebigen Position einfügenRemove→ bestimmte Teilstrings entfernen
Dieses Projekt hat keine offene Lizenz. FĂĽr jede Verwendung oder Weitergabe bitte vorher anfragen.