Skip to content

TUnicodeStringBuilder

Ansi-string version of string builder.

Declaration

Source position: syssbh.inc line 5

type

  TUnicodeStringBuilder = class
  public
    constructor Create;
    constructor Create(aCapacity: Integer);
    constructor Create(const AValue: UnicodeString);
    constructor Create(aCapacity: Integer; aMaxCapacity: Integer);
    constructor Create(const AValue: UnicodeString; aCapacity: Integer);
    constructor Create(const AValue: UnicodeString; StartIndex: Integer; 
                  aLength: Integer; aCapacity: Integer);
    function Append(const AValue: Boolean) : TUnicodeStringBuilder;
    function Append(const AValue: Byte) : TUnicodeStringBuilder;
    function Append(const AValue: WideChar) : TUnicodeStringBuilder;
    function Append(const AValue: Currency) : TUnicodeStringBuilder;
    function Append(const AValue: Double) : TUnicodeStringBuilder;
    function Append(const AValue: SmallInt) : TUnicodeStringBuilder;
    function Append(const AValue: LongInt) : TUnicodeStringBuilder;
    function Append(const AValue: Int64) : TUnicodeStringBuilder;
    function Append(const AValue: TObject) : TUnicodeStringBuilder;
    function Append(const AValue: ShortInt) : TUnicodeStringBuilder;
    function Append(const AValue: Single) : TUnicodeStringBuilder;
    function Append(const AValue: UInt64) : TUnicodeStringBuilder;
    function Append(const AValue: Array of WideChar) : TUnicodeStringBuilder;
    function Append(const AValue: Word) : TUnicodeStringBuilder;
    function Append(const AValue: Cardinal) : TUnicodeStringBuilder;
    function Append(const AValue: PWideChar) : TUnicodeStringBuilder;
    function Append(const AValue: UnicodeString) : TUnicodeStringBuilder;
    function Append(const AValue: AnsiChar) : TUnicodeStringBuilder;
    function Append(const AValue: RawByteString) : TUnicodeStringBuilder;
    function Append(const AValue: WideChar; RepeatCount: Integer)
                : TUnicodeStringBuilder;
    function Append(const AValue: Array of WideChar; StartIndex: Integer; 
               SBCharCount: Integer) : TUnicodeStringBuilder;
    function Append(const AValue: UnicodeString; StartIndex: Integer; 
               Count: Integer) : TUnicodeStringBuilder;
    function Append(const Fmt: UnicodeString; const Args: Array of const)
                : TUnicodeStringBuilder;
    function AppendFormat : TUnicodeStringBuilder;
    function AppendLine : TUnicodeStringBuilder;
    function AppendLine(const AValue: RawByteString) : TUnicodeStringBuilder;
    procedure Clear;
    procedure CopyTo;
    function EnsureCapacity : Integer;
    function Equals : Boolean;
    function GetEnumerator : TCharEnumerator;
    function Insert(Index: Integer; const AValue: Boolean)
                : TUnicodeStringBuilder;
    function Insert(Index: Integer; const AValue: Byte)
                : TUnicodeStringBuilder;
    function Insert(Index: Integer; const AValue: WideChar)
                : TUnicodeStringBuilder;
    function Insert(Index: Integer; const AValue: Currency)
                : TUnicodeStringBuilder;
    function Insert(Index: Integer; const AValue: Double)
                : TUnicodeStringBuilder;
    function Insert(Index: Integer; const AValue: SmallInt)
                : TUnicodeStringBuilder;
    function Insert(Index: Integer; const AValue: LongInt)
                : TUnicodeStringBuilder;
    function Insert(Index: Integer; const AValue: Array of WideChar)
                : TUnicodeStringBuilder;
    function Insert(Index: Integer; const AValue: Int64)
                : TUnicodeStringBuilder;
    function Insert(Index: Integer; const AValue: TObject)
                : TUnicodeStringBuilder;
    function Insert(Index: Integer; const AValue: ShortInt)
                : TUnicodeStringBuilder;
    function Insert(Index: Integer; const AValue: Single)
                : TUnicodeStringBuilder;
    function Insert(Index: Integer; const AValue: UnicodeString)
                : TUnicodeStringBuilder;
    function Insert(Index: Integer; const AValue: Word)
                : TUnicodeStringBuilder;
    function Insert(Index: Integer; const AValue: Cardinal)
                : TUnicodeStringBuilder;
    function Insert(Index: Integer; const AValue: UInt64)
                : TUnicodeStringBuilder;
    function Insert(Index: Integer; const AValue: UnicodeString; 
               const aRepeatCount: Integer) : TUnicodeStringBuilder;
    function Insert(Index: Integer; const AValue: Array of WideChar; 
               startIndex: Integer; SBCharCount: Integer)
                : TUnicodeStringBuilder;
    function Remove : TUnicodeStringBuilder;
    function Replace(const OldChar: WideChar; const NewChar: WideChar)
                 : TUnicodeStringBuilder;
    function Replace(const OldChar: WideChar; const NewChar: WideChar; 
                StartIndex: Integer; Count: Integer)
                 : TUnicodeStringBuilder;
    function Replace(const OldValue: UnicodeString; 
                const NewValue: UnicodeString) : TUnicodeStringBuilder;
    function Replace(const OldValue: UnicodeString; 
                const NewValue: UnicodeString; StartIndex: Integer; 
                Count: Integer) : TUnicodeStringBuilder;
    function ToString : UnicodeString;
    function ToString(UpdateCapacity: Boolean) : UnicodeString; overload;
    function ToString(aStartIndex: Integer; aLength: Integer)
                  : UnicodeString;
    property Chars[index : Integer]: WideChar; {rw}
    property &Length: Integer; {rw}
    property Capacity: Integer; {rw}
    property MaxCapacity: Integer; {r}
  end;

Description

TUnicodeStringBuilder is a class to construct an ansistring out of other strings or characters. It's methods can be used instead of constructing the string manually using the normal + or concat operators. If used properly (e.g. by setting a sufficiently large Capacity), will result in faster operation. It offers various methods to append to the string.

To create a unicode string, use the TUnicodeStringBuilder class instead.

Properties

Member Visibility Description
Capacity public Current capacity of the string buffer.
Chars public Indexed access to the characters in the string.
Length public Currentl length of the string buffer.
MaxCapacity read only public Maximum capacity of the string buffer.

Methods

Member Visibility Description
Append public Append data in string form to the buffer.
AppendFormat public Append the result of a Format.
AppendLine public Append a string followed by a newline.
Clear public Clear the string being built.
CopyTo public Copy string bytes to an array.
Create public Create a new TUnicodeStringBuilder instance.
EnsureCapacity public Set the capacity if needed.
Equals public Check if 2 stringbuilders have the same content string.
GetEnumerator public
Insert public Insert data in string form into the buffer at a given position.
Remove public Remove data from the string.
Replace public Replace a range of characters.
ToString public Return the string buffer as an UnicodeString.

See also

Name Description
TUnicodeStringBuilder Ansi-string version of string builder.