StringBuilder Třída

Definice

Představuje proměnlivý řetězec znaků. Tato třída se nemůže dědit.

public ref class StringBuilder sealed
public ref class StringBuilder sealed : System::Runtime::Serialization::ISerializable
public sealed class StringBuilder
public sealed class StringBuilder : System.Runtime.Serialization.ISerializable
[System.Serializable]
public sealed class StringBuilder
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public sealed class StringBuilder : System.Runtime.Serialization.ISerializable
type StringBuilder = class
type StringBuilder = class
    interface ISerializable
[<System.Serializable>]
type StringBuilder = class
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type StringBuilder = class
    interface ISerializable
Public NotInheritable Class StringBuilder
Public NotInheritable Class StringBuilder
Implements ISerializable
Dědičnost
StringBuilder
Atributy
Implementuje

Příklady

Následující příklad ukazuje, jak volat mnoho metod definovaných StringBuilder třídou .

using namespace System;
using namespace System::Text;

int main()
{
    // Create a StringBuilder that expects to hold 50 characters.
    // Initialize the StringBuilder with "ABC".
    StringBuilder^ sb = gcnew StringBuilder("ABC", 50);

    // Append three characters (D, E, and F) to the end of the
    // StringBuilder.
    sb->Append(gcnew array<Char>{'D', 'E', 'F'});

    // Append a format string to the end of the StringBuilder.
    sb->AppendFormat("GHI{0}{1}", (Char)'J', (Char)'k');

    // Display the number of characters in the StringBuilder
    // and its string.
    Console::WriteLine("{0} chars: {1}", sb->Length, sb->ToString());

    // Insert a string at the beginning of the StringBuilder.
    sb->Insert(0, "Alphabet: ");

    // Replace all lowercase k's with uppercase K's.
    sb->Replace('k', 'K');

    // Display the number of characters in the StringBuilder
    // and its string.
    Console::WriteLine("{0} chars: {1}", sb->Length, sb->ToString());
}

// This code produces the following output.
//
// 11 chars: ABCDEFGHIJk
// 21 chars: Alphabet: ABCDEFGHIJK
using System;
using System.Text;

public sealed class App
{
    static void Main()
    {
        // Create a StringBuilder that expects to hold 50 characters.
        // Initialize the StringBuilder with "ABC".
        StringBuilder sb = new StringBuilder("ABC", 50);

        // Append three characters (D, E, and F) to the end of the StringBuilder.
        sb.Append(new char[] { 'D', 'E', 'F' });

        // Append a format string to the end of the StringBuilder.
        sb.AppendFormat("GHI{0}{1}", 'J', 'k');

        // Display the number of characters in the StringBuilder and its string.
        Console.WriteLine("{0} chars: {1}", sb.Length, sb.ToString());

        // Insert a string at the beginning of the StringBuilder.
        sb.Insert(0, "Alphabet: ");

        // Replace all lowercase k's with uppercase K's.
        sb.Replace('k', 'K');

        // Display the number of characters in the StringBuilder and its string.
        Console.WriteLine("{0} chars: {1}", sb.Length, sb.ToString());
    }
}

// This code produces the following output.
//
// 11 chars: ABCDEFGHIJk
// 21 chars: Alphabet: ABCDEFGHIJK
open System.Text

// Create a StringBuilder that expects to hold 50 characters.
// Initialize the StringBuilder with "ABC".
let sb = StringBuilder("ABC", 50)

// Append three characters (D, E, and F) to the end of the StringBuilder.
sb.Append [| 'D'; 'E'; 'F' |] |> ignore

// Append a format string to the end of the StringBuilder.
sb.AppendFormat("GHI{0}{1}", 'J', 'k') |> ignore

// Display the number of characters in the StringBuilder and its string.
printfn $"{sb.Length} chars: {sb}"

// Insert a string at the beginning of the StringBuilder.
sb.Insert(0, "Alphabet: ") |> ignore

// Replace all lowercase k's with uppercase K's.
sb.Replace('k', 'K') |> ignore

// Display the number of characters in the StringBuilder and its string.
printfn $"{sb.Length} chars: {sb}"

// This code produces the following output.
//
// 11 chars: ABCDEFGHIJk
// 21 chars: Alphabet: ABCDEFGHIJK
Imports System.Text

Public Module App 
    Public Sub Main() 
        ' Create a StringBuilder that expects to hold 50 characters.
        ' Initialize the StringBuilder with "ABC".
        Dim sb As New StringBuilder("ABC", 50)

        ' Append three characters (D, E, and F) to the end of the StringBuilder.
        sb.Append(New Char() {"D"c, "E"c, "F"c})

        ' Append a format string to the end of the StringBuilder.
        sb.AppendFormat("GHI{0}{1}", "J"c, "k"c)

        ' Display the number of characters in the StringBuilder and its string.
        Console.WriteLine("{0} chars: {1}", sb.Length, sb.ToString())

        ' Insert a string at the beginning of the StringBuilder.
        sb.Insert(0, "Alphabet: ")

        ' Replace all lowercase k's with uppercase K's.
        sb.Replace("k", "K")

        ' Display the number of characters in the StringBuilder and its string.
        Console.WriteLine("{0} chars: {1}", sb.Length, sb.ToString())
    End Sub
End Module

' This code produces the following output.
'
' 11 chars: ABCDEFGHIJk
' 21 chars: Alphabet: ABCDEFGHIJK

Poznámky

Další informace o tomto rozhraní API najdete v tématu Doplňkové poznámky k rozhraní API pro StringBuilder.

Poznámky pro volající

Když v .NET Core a .NET Framework 4.0 a novějších verzích vytvoříte instanci StringBuilder objektu voláním konstruktoru StringBuilder(Int32, Int32) , délka i kapacita StringBuilder instance se můžou zvětšit nad hodnotu její MaxCapacity vlastnosti. K tomu může dojít zejména při volání Append(String) metod a AppendFormat(String, Object) pro připojení malých řetězců.

Konstruktory

StringBuilder()

Inicializuje novou instanci StringBuilder třídy.

StringBuilder(Int32)

Inicializuje novou instanci StringBuilder třídy pomocí zadané kapacity.

StringBuilder(Int32, Int32)

Inicializuje novou instanci StringBuilder třídy, která začíná se zadanou kapacitou a může narůstat na zadané maximum.

StringBuilder(String)

Inicializuje novou instanci StringBuilder třídy pomocí zadaného řetězce.

StringBuilder(String, Int32)

Inicializuje novou instanci StringBuilder třídy pomocí zadaného řetězce a kapacity.

StringBuilder(String, Int32, Int32, Int32)

Inicializuje novou instanci StringBuilder třídy ze zadaného podřetěžce a kapacity.

Vlastnosti

Capacity

Získá nebo nastaví maximální počet znaků, které mohou být obsaženy v paměti přidělené aktuální instance.

Chars[Int32]

Získá nebo nastaví znak na zadané pozici znaku v této instanci.

Length

Získá nebo nastaví délku aktuálního StringBuilder objektu.

MaxCapacity

Získá maximální kapacitu této instance.

Metody

Append(Boolean)

Připojí řetězcovou reprezentaci zadané logické hodnoty k této instanci.

Append(Byte)

Připojí řetězcovou reprezentaci zadaného 8bitového celého čísla bez znaménka k této instanci.

Append(Char)

Připojí řetězcovou reprezentaci zadaného Char objektu k této instanci.

Append(Char*, Int32)

Připojí k této instanci pole znaků Unicode začínající na zadané adrese.

Append(Char, Int32)

Připojí zadaný počet kopií řetězcové reprezentace znaku Unicode k této instanci.

Append(Char[])

Připojí řetězcovou reprezentaci znaků Unicode v zadaném poli k této instanci.

Append(Char[], Int32, Int32)

Připojí řetězcovou reprezentaci zadaného podarray znaků Unicode k této instanci.

Append(Decimal)

Připojí řetězcovou reprezentaci zadaného desetinného čísla k této instanci.

Append(Double)

Připojí řetězcovou reprezentaci zadaného čísla s plovoucí desetinnou čárkou s dvojitou přesností k této instanci.

Append(IFormatProvider, StringBuilder+AppendInterpolatedStringHandler)

Připojí zadaný interpolovaný řetězec k této instanci pomocí zadaného formátu.

Append(Int16)

Připojí řetězcovou reprezentaci zadaného 16bitového celého čísla se znaky k této instanci.

Append(Int32)

Připojí řetězcovou reprezentaci zadaného 32bitového celého čísla se znaky k této instanci.

Append(Int64)

Připojí řetězcovou reprezentaci zadaného 64bitového celého čísla se znaky k této instanci.

Append(Object)

Připojí řetězcovou reprezentaci zadaného objektu k této instanci.

Append(ReadOnlyMemory<Char>)

Připojí řetězcovou reprezentaci zadané oblasti paměti jen pro čtení k této instanci.

Append(ReadOnlySpan<Char>)

Připojí řetězcovou reprezentaci zadaného rozsahu znaků jen pro čtení k této instanci.

Append(SByte)

Připojí řetězcovou reprezentaci zadaného 8bitového celého čísla se znaky k této instanci.

Append(Single)

Připojí řetězcovou reprezentaci zadaného čísla s plovoucí desetinnou čárkou s jednou přesností k této instanci.

Append(String)

Připojí kopii zadaného řetězce k této instanci.

Append(String, Int32, Int32)

Připojí kopii zadaného podřetětce k této instanci.

Append(StringBuilder)

Připojí řetězcovou reprezentaci zadaného tvůrce řetězců k této instanci.

Append(StringBuilder, Int32, Int32)

Připojí kopii podřetězce v rámci zadaného tvůrce řetězců k této instanci.

Append(StringBuilder+AppendInterpolatedStringHandler)

Připojí k této instanci zadaný interpolovaný řetězec.

Append(UInt16)

Připojí řetězcovou reprezentaci zadaného 16bitového celého čísla bez znaménka k této instanci.

Append(UInt32)

Připojí řetězcovou reprezentaci zadaného 32bitového celého čísla bez znaménka k této instanci.

Append(UInt64)

Připojí řetězcovou reprezentaci zadaného 64bitového celého čísla bez znaménka k této instanci.

AppendFormat(IFormatProvider, CompositeFormat, Object[])

Připojí řetězec vrácený zpracováním řetězce složeného formátu, který obsahuje nula nebo více položek formátu, k této instanci. Každá položka formátu je nahrazena řetězcovou reprezentací některého z argumentů pomocí zadaného zprostředkovatele formátu.

AppendFormat(IFormatProvider, CompositeFormat, ReadOnlySpan<Object>)

Připojí řetězec vrácený zpracováním řetězce složeného formátu, který obsahuje nula nebo více položek formátu, k této instanci. Každá položka formátu je nahrazena řetězcovou reprezentací některého z argumentů pomocí zadaného zprostředkovatele formátu.

AppendFormat(IFormatProvider, String, Object)

Připojí řetězec vrácený zpracováním řetězce složeného formátu, který obsahuje nula nebo více položek formátu, k této instanci. Každá položka formátu je nahrazena řetězcovou reprezentací jednoho argumentu pomocí zadaného zprostředkovatele formátu.

AppendFormat(IFormatProvider, String, Object, Object)

Připojí řetězec vrácený zpracováním řetězce složeného formátu, který obsahuje nula nebo více položek formátu, k této instanci. Každá položka formátu je nahrazena řetězcovou reprezentací některého ze dvou argumentů pomocí zadaného zprostředkovatele formátu.

AppendFormat(IFormatProvider, String, Object, Object, Object)

Připojí řetězec vrácený zpracováním řetězce složeného formátu, který obsahuje nula nebo více položek formátu, k této instanci. Každá položka formátu je nahrazena řetězcovou reprezentací některého ze tří argumentů pomocí zadaného zprostředkovatele formátu.

AppendFormat(IFormatProvider, String, Object[])

Připojí řetězec vrácený zpracováním řetězce složeného formátu, který obsahuje nula nebo více položek formátu, k této instanci. Každá položka formátu je nahrazena řetězcovou reprezentací odpovídajícího argumentu v poli parametrů pomocí zadaného zprostředkovatele formátu.

AppendFormat(String, Object)

Připojí řetězec vrácený zpracováním řetězce složeného formátu, který obsahuje nula nebo více položek formátu, k této instanci. Každá položka formátu je nahrazena řetězcovou reprezentací jednoho argumentu.

AppendFormat(String, Object, Object)

Připojí řetězec vrácený zpracováním řetězce složeného formátu, který obsahuje nula nebo více položek formátu, k této instanci. Každá položka formátu je nahrazena řetězcovou reprezentací některého ze dvou argumentů.

AppendFormat(String, Object, Object, Object)

Připojí řetězec vrácený zpracováním řetězce složeného formátu, který obsahuje nula nebo více položek formátu, k této instanci. Každá položka formátu je nahrazena řetězcovou reprezentací některého ze tří argumentů.

AppendFormat(String, Object[])

Připojí řetězec vrácený zpracováním řetězce složeného formátu, který obsahuje nula nebo více položek formátu, k této instanci. Každá položka formátu je nahrazena řetězcovou reprezentací odpovídajícího argumentu v poli parametrů.

AppendFormat<TArg0,TArg1,TArg2>(IFormatProvider, CompositeFormat, TArg0, TArg1, TArg2)

Připojí řetězec vrácený zpracováním řetězce složeného formátu, který obsahuje nula nebo více položek formátu, k této instanci. Každá položka formátu je nahrazena řetězcovou reprezentací některého z argumentů pomocí zadaného zprostředkovatele formátu.

AppendFormat<TArg0,TArg1>(IFormatProvider, CompositeFormat, TArg0, TArg1)

Připojí řetězec vrácený zpracováním řetězce složeného formátu, který obsahuje nula nebo více položek formátu, k této instanci. Každá položka formátu je nahrazena řetězcovou reprezentací některého z argumentů pomocí zadaného zprostředkovatele formátu.

AppendFormat<TArg0>(IFormatProvider, CompositeFormat, TArg0)

Připojí řetězec vrácený zpracováním řetězce složeného formátu, který obsahuje nula nebo více položek formátu, k této instanci. Každá položka formátu je nahrazena řetězcovou reprezentací některého z argumentů pomocí zadaného zprostředkovatele formátu.

AppendJoin(Char, Object[])

Zřetězí řetězcové reprezentace prvků v zadaném poli objektů pomocí zadaného oddělovače znaků mezi jednotlivými členy a pak připojí výsledek k aktuální instanci tvůrce řetězců.

AppendJoin(Char, String[])

Zřetězí řetězce zadaného pole pomocí zadaného oddělovače znaků mezi jednotlivými řetězci a pak připojí výsledek k aktuální instanci tvůrce řetězců.

AppendJoin(String, Object[])

Zřetězí řetězcové reprezentace prvků v zadaném poli objektů pomocí zadaného oddělovače mezi jednotlivými členy a pak připojí výsledek k aktuální instanci tvůrce řetězců.

AppendJoin(String, String[])

Zřetězí řetězce zadaného pole pomocí zadaného oddělovače mezi jednotlivými řetězci a pak připojí výsledek k aktuální instanci tvůrce řetězců.

AppendJoin<T>(Char, IEnumerable<T>)

Zřetězí a připojí členy kolekce pomocí zadaného oddělovače znaků mezi jednotlivými členy.

AppendJoin<T>(String, IEnumerable<T>)

Zřetězí a připojí členy kolekce pomocí zadaného oddělovače mezi jednotlivými členy.

AppendLine()

Připojí výchozí ukončovací znak řádku na konec aktuálního StringBuilder objektu.

AppendLine(IFormatProvider, StringBuilder+AppendInterpolatedStringHandler)

Připojí zadaný interpolovaný řetězec pomocí zadaného formátu, následovaný výchozím ukončovacím znakem řádku, na konec aktuální objektu StringBuilder.

AppendLine(String)

Připojí kopii zadaného řetězce následovaného výchozím ukončovačem řádků na konec aktuálního StringBuilder objektu.

AppendLine(StringBuilder+AppendInterpolatedStringHandler)

Připojí zadaný interpolovaný řetězec následovaný výchozím ukončovacím znakem řádku na konec aktuální stringBuilder objektu.

Clear()

Odebere všechny znaky z aktuální StringBuilder instance.

CopyTo(Int32, Char[], Int32, Int32)

Zkopíruje znaky ze zadaného segmentu této instance do zadaného segmentu cílového Char pole.

CopyTo(Int32, Span<Char>, Int32)

Zkopíruje znaky ze zadaného segmentu této instance do cílového Char rozsahu.

EnsureCapacity(Int32)

Zajišťuje, aby kapacita této instance StringBuilder byla alespoň zadanou hodnotou.

Equals(Object)

Určí, zda se zadaný objekt rovná aktuálnímu objektu.

(Zděděno od Object)
Equals(ReadOnlySpan<Char>)

Vrátí hodnotu označující, zda se znaky v této instanci rovnají znakům v zadaném rozsahu znaků jen pro čtení.

Equals(StringBuilder)

Vrací hodnotu, která určuje, zda je tato instance rovna zadanému objektu.

GetChunks()

Vrátí objekt, který lze použít k iteraci prostřednictvím bloků znaků reprezentovaných v ReadOnlyMemory<Char> vytvořené z této StringBuilder instance.

GetHashCode()

Slouží jako výchozí hashovací funkce.

(Zděděno od Object)
GetType()

Získá aktuální Type instanci.

(Zděděno od Object)
Insert(Int32, Boolean)

Vloží řetězcovou reprezentaci logické hodnoty do této instance na zadané pozici znaku.

Insert(Int32, Byte)

Vloží řetězcovou reprezentaci zadaného 8bitového celého čísla bez znaménka do této instance na zadané pozici znaku.

Insert(Int32, Char)

Vloží řetězcovou reprezentaci zadaného znaku Unicode do této instance na zadané pozici znaku.

Insert(Int32, Char[])

Vloží řetězcovou reprezentaci zadaného pole znaků Unicode do této instance na zadané pozici znaku.

Insert(Int32, Char[], Int32, Int32)

Vloží řetězcovou reprezentaci zadaného podarray znaků Unicode do této instance na zadané pozici znaku.

Insert(Int32, Decimal)

Vloží řetězcovou reprezentaci desetinného čísla do této instance na zadané pozici znaku.

Insert(Int32, Double)

Vloží řetězcovou reprezentaci čísla s plovoucí desetinnou čárkou s dvojitou přesností do této instance v zadané pozici znaku.

Insert(Int32, Int16)

Vloží řetězcovou reprezentaci zadaného 16bitového celého čísla se znaménkem do této instance na zadané pozici znaku.

Insert(Int32, Int32)

Vloží řetězcovou reprezentaci zadaného 32bitového celého čísla se znaménkem do této instance na zadané pozici znaku.

Insert(Int32, Int64)

Vloží řetězcovou reprezentaci 64bitového celého čísla se znaménkem do této instance na pozici zadaného znaku.

Insert(Int32, Object)

Vloží řetězcovou reprezentaci objektu do této instance na pozici zadaného znaku.

Insert(Int32, ReadOnlySpan<Char>)

Vloží posloupnost znaků do této instance na zadané pozici znaku.

Insert(Int32, SByte)

Vloží řetězcovou reprezentaci zadaného 8bitového celého čísla se znaménkem do této instance na zadané pozici znaku.

Insert(Int32, Single)

Vloží řetězcovou reprezentaci čísla s plovoucí desetinnou čárkou s jednou přesností do této instance na pozici zadaného znaku.

Insert(Int32, String)

Vloží řetězec do této instance na zadané pozici znaku.

Insert(Int32, String, Int32)

Vloží jednu nebo více kopií zadaného řetězce do této instance na pozici zadaného znaku.

Insert(Int32, UInt16)

Vloží řetězcovou reprezentaci 16bitového celého čísla bez znaménka do této instance na zadané pozici znaku.

Insert(Int32, UInt32)

Vloží řetězcovou reprezentaci 32bitového celého čísla bez znaménka do této instance na zadané pozici znaku.

Insert(Int32, UInt64)

Vloží řetězcovou reprezentaci 64bitového celého čísla bez znaménka do této instance na zadané pozici znaku.

MemberwiseClone()

Vytvoří mělkou kopii aktuálního Objectsouboru .

(Zděděno od Object)
Remove(Int32, Int32)

Odebere zadaný rozsah znaků z této instance.

Replace(Char, Char)

Nahradí všechny výskyty zadaného znaku v této instanci jiným zadaným znakem.

Replace(Char, Char, Int32, Int32)

Nahradí v rámci podřetěžce této instance všechny výskyty zadaného znaku jiným zadaným znakem.

Replace(ReadOnlySpan<Char>, ReadOnlySpan<Char>)

Představuje proměnlivý řetězec znaků. Tato třída se nemůže dědit.

Replace(ReadOnlySpan<Char>, ReadOnlySpan<Char>, Int32, Int32)

Představuje proměnlivý řetězec znaků. Tato třída se nemůže dědit.

Replace(String, String)

Nahradí všechny výskyty zadaného řetězce v této instanci jiným zadaným řetězcem.

Replace(String, String, Int32, Int32)

Nahradí v rámci podřetězce této instance všechny výskyty zadaného řetězce jiným zadaným řetězcem.

ToString()

Převede hodnotu této instance na String.

ToString(Int32, Int32)

Převede hodnotu podřetěžce této instance na String.

Explicitní implementace rozhraní

ISerializable.GetObjectData(SerializationInfo, StreamingContext)

Naplní SerializationInfo objekt daty potřebnými k deserializaci aktuálního StringBuilder objektu.

Platí pro

Viz také