StringBuilder Classe

Definição

Representa uma cadeia de caracteres mutável. Essa classe não pode ser herdada.

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
Herança
StringBuilder
Atributos
Implementações

Exemplos

O exemplo a seguir mostra como chamar muitos dos métodos definidos pela StringBuilder classe .

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

Comentários

Para obter mais informações sobre essa API, consulte Comentários da API complementar para StringBuilder.

Notas aos Chamadores

No .NET Core e no .NET Framework 4.0 e versões posteriores, quando você cria uma instância do StringBuilder objeto chamando o StringBuilder(Int32, Int32) construtor, o comprimento e a capacidade da StringBuilder instância podem crescer além do valor de sua MaxCapacity propriedade. Isso pode ocorrer especialmente quando você chama os Append(String) métodos e AppendFormat(String, Object) para acrescentar cadeias de caracteres pequenas.

Construtores

StringBuilder()

Inicializa uma nova instância da classe StringBuilder.

StringBuilder(Int32)

Inicializa uma nova instância da classe StringBuilder usando a capacidade especificada.

StringBuilder(Int32, Int32)

Inicializa uma nova instância da classe StringBuilder que começa com uma capacidade especificada e pode crescer até um máximo especificado.

StringBuilder(String)

Inicializa uma nova instância da classe StringBuilder usando a cadeia de caracteres especificada.

StringBuilder(String, Int32)

Inicializa uma nova instância da classe StringBuilder usando a cadeia de caracteres e a capacidade especificadas.

StringBuilder(String, Int32, Int32, Int32)

Inicializa uma nova instância da classe StringBuilder da capacidade e da subcadeia de caracteres especificada.

Propriedades

Capacity

Obtém ou define o número máximo de caracteres que podem ser contidos na memória alocada pela instância atual.

Chars[Int32]

Obtém ou define o caractere na posição de caractere especificada nessa instância.

Length

Obtém ou define o tamanho do objeto atual StringBuilder.

MaxCapacity

Obtém a capacidade máxima desta instância.

Métodos

Append(Boolean)

Acrescenta a representação de cadeia de caracteres de um valor booliano especificado à essa instância.

Append(Byte)

Acrescenta a representação de cadeia de caracteres de um inteiro sem sinal de 8 bits especificado a essa instância.

Append(Char)

Acrescenta a representação de cadeia de caracteres de um objeto Char especificado à essa instância.

Append(Char*, Int32)

Acrescenta uma matriz de caracteres Unicode começando em um endereço especificado a essa instância.

Append(Char, Int32)

Acrescenta um número de cópias especificado da representação de cadeia de caracteres de um caractere Unicode a essa instância.

Append(Char[])

Acrescenta a representação de cadeia de caracteres dos caracteres Unicode em uma matriz especificada a essa instância.

Append(Char[], Int32, Int32)

Acrescenta a representação de cadeia de caracteres de uma submatriz especificada de caracteres Unicode à essa instância.

Append(Decimal)

Acrescenta a representação de cadeia de caracteres de um número decimal especificado à essa instância.

Append(Double)

Acrescenta a representação de cadeia de caracteres de um número de ponto flutuante de precisão dupla especificado a essa instância.

Append(IFormatProvider, StringBuilder+AppendInterpolatedStringHandler)

Acrescenta a cadeia de caracteres interpolada especificada a essa instância usando o formato especificado.

Append(Int16)

Acrescenta a representação de cadeia de caracteres de um inteiro com sinal de 16 bits especificado a essa instância.

Append(Int32)

Acrescenta a representação de cadeia de caracteres de um inteiro com sinal de 32 bits especificado a essa instância.

Append(Int64)

Acrescenta a representação de cadeia de caracteres de um inteiro com sinal de 64 bits especificado a essa instância.

Append(Object)

Acrescenta a representação de cadeia de caracteres de um objeto especificado à essa instância.

Append(ReadOnlyMemory<Char>)

Acrescenta a representação de cadeia de caracteres de uma região de memória do caractere somente leitura a essa instância.

Append(ReadOnlySpan<Char>)

Acrescenta a representação de cadeia de caracteres de um intervalo de caracteres somente leitura a essa instância.

Append(SByte)

Acrescenta a representação de cadeia de caracteres de um inteiro com sinal de 8 bits especificado a essa instância.

Append(Single)

Acrescenta a representação de cadeia de caracteres de um número de ponto flutuante de precisão simples especificado a essa instância.

Append(String)

Acrescenta uma cópia da cadeia de caracteres especificada a essa instância.

Append(String, Int32, Int32)

Acrescenta uma cópia de uma subcadeia de caracteres especificada a esta instância.

Append(StringBuilder)

Acrescenta a representação de cadeia de caracteres de um construtor de cadeia de caracteres especificado a essa instância.

Append(StringBuilder, Int32, Int32)

Acrescenta uma cópia de uma substring em um construtor de cadeia de caracteres especificado a essa instância.

Append(StringBuilder+AppendInterpolatedStringHandler)

Acrescenta a cadeia de caracteres interpolada especificada a essa instância.

Append(UInt16)

Acrescenta a representação de cadeia de caracteres de um inteiro sem sinal de 16 bits especificado a essa instância.

Append(UInt32)

Acrescenta a representação de cadeia de caracteres de um inteiro sem sinal de 32 bits especificado a essa instância.

Append(UInt64)

Acrescenta a representação de cadeia de caracteres de um inteiro sem sinal de 64 bits especificado a essa instância.

AppendFormat(IFormatProvider, CompositeFormat, Object[])

Acrescenta a cadeia de caracteres retornada pelo processamento de uma cadeia de caracteres de formato composto, que contém zero ou mais itens de formato, a essa instância. Cada item de formato é substituído pela representação de cadeia de caracteres de qualquer um dos argumentos usando um provedor de formato especificado.

AppendFormat(IFormatProvider, CompositeFormat, ReadOnlySpan<Object>)

Acrescenta a cadeia de caracteres retornada pelo processamento de uma cadeia de caracteres de formato composto, que contém zero ou mais itens de formato, a essa instância. Cada item de formato é substituído pela representação de cadeia de caracteres de qualquer um dos argumentos usando um provedor de formato especificado.

AppendFormat(IFormatProvider, String, Object)

Acrescenta a cadeia de caracteres retornada pelo processamento de uma cadeia de caracteres de formato composto, que contém zero ou mais itens de formato, a essa instância. Cada item de formato é substituído pela representação de cadeia de caracteres de um único argumento usando um provedor de formato especificado.

AppendFormat(IFormatProvider, String, Object, Object)

Acrescenta a cadeia de caracteres retornada pelo processamento de uma cadeia de caracteres de formato composto, que contém zero ou mais itens de formato, a essa instância. Cada item de formato é substituído pela representação de cadeia de caracteres de um de dois argumentos usando um provedor de formato especificado.

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

Acrescenta a cadeia de caracteres retornada pelo processamento de uma cadeia de caracteres de formato composto, que contém zero ou mais itens de formato, a essa instância. Cada item de formato é substituído pela representação de cadeia de caracteres de um de três argumentos usando um provedor de formato especificado.

AppendFormat(IFormatProvider, String, Object[])

Acrescenta a cadeia de caracteres retornada pelo processamento de uma cadeia de caracteres de formato composto, que contém zero ou mais itens de formato, a essa instância. Cada item de formato é substituído pela representação de cadeia de um argumento correspondente em uma matriz de parâmetro usando um provedor de formato especificado.

AppendFormat(String, Object)

Acrescenta a cadeia de caracteres retornada pelo processamento de uma cadeia de caracteres de formato composto, que contém zero ou mais itens de formato, a essa instância. Cada item de formato é substituído pela representação de cadeia de caracteres de um único argumento.

AppendFormat(String, Object, Object)

Acrescenta a cadeia de caracteres retornada pelo processamento de uma cadeia de caracteres de formato composto, que contém zero ou mais itens de formato, a essa instância. Cada item de formato é substituído pela representação de cadeia de caracteres de um dos dois argumentos.

AppendFormat(String, Object, Object, Object)

Acrescenta a cadeia de caracteres retornada pelo processamento de uma cadeia de caracteres de formato composto, que contém zero ou mais itens de formato, a essa instância. Cada item de formato é substituído pela representação de cadeia de caracteres de um dos três argumentos.

AppendFormat(String, Object[])

Acrescenta a cadeia de caracteres retornada pelo processamento de uma cadeia de caracteres de formato composto, que contém zero ou mais itens de formato, a essa instância. Cada item de formato é substituído pela representação de cadeia de caracteres de um argumento correspondente em uma matriz de parâmetros.

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

Acrescenta a cadeia de caracteres retornada pelo processamento de uma cadeia de caracteres de formato composto, que contém zero ou mais itens de formato, a essa instância. Cada item de formato é substituído pela representação de cadeia de caracteres de qualquer um dos argumentos usando um provedor de formato especificado.

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

Acrescenta a cadeia de caracteres retornada pelo processamento de uma cadeia de caracteres de formato composto, que contém zero ou mais itens de formato, a essa instância. Cada item de formato é substituído pela representação de cadeia de caracteres de qualquer um dos argumentos usando um provedor de formato especificado.

AppendFormat<TArg0>(IFormatProvider, CompositeFormat, TArg0)

Acrescenta a cadeia de caracteres retornada pelo processamento de uma cadeia de caracteres de formato composto, que contém zero ou mais itens de formato, a essa instância. Cada item de formato é substituído pela representação de cadeia de caracteres de qualquer um dos argumentos usando um provedor de formato especificado.

AppendJoin(Char, Object[])

Concatena as representações de cadeia de caracteres dos elementos na matriz de objetos fornecida, usando o separador de caracteres especificado entre cada membro e, em seguida, acrescenta o resultado à instância atual do construtor de cadeias de caracteres.

AppendJoin(Char, String[])

Concatena as cadeias de caracteres da matriz fornecida, usando o separador de caracteres especificado entre cada cadeia de caracteres e, em seguida, acrescenta o resultado à instância atual do construtor de cadeias de caracteres.

AppendJoin(String, Object[])

Concatena as representações de cadeia de caracteres dos elementos na matriz de objetos fornecida, usando o separador especificado entre cada membro e, em seguida, acrescenta o resultado à instância atual do construtor de cadeias de caracteres.

AppendJoin(String, String[])

Concatena as cadeias de caracteres da matriz fornecida, usando o separador especificado entre cada cadeia de caracteres e, em seguida, acrescenta o resultado à instância atual do construtor de cadeias de caracteres.

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

Concatena e acrescenta os membros de uma coleção, usando o separador de caracteres especificado entre cada membro.

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

Concatena e acrescenta os membros de uma coleção, usando o separador especificado entre cada membro.

AppendLine()

Acrescenta o terminador de linha padrão ao final do atual objeto StringBuilder.

AppendLine(IFormatProvider, StringBuilder+AppendInterpolatedStringHandler)

Acrescenta a cadeia de caracteres interpolada especificada usando o formato especificado, seguido pelo terminador de linha padrão, ao final do objeto StringBuilder atual.

AppendLine(String)

Acrescenta uma cópia da cadeia de caracteres especificada seguida pelo terminador de linha padrão para o fim do objeto StringBuilder atual.

AppendLine(StringBuilder+AppendInterpolatedStringHandler)

Acrescenta a cadeia de caracteres interpolada especificada seguida pelo terminador de linha padrão ao final do objeto StringBuilder atual.

Clear()

Remove todos os caracteres da instância StringBuilder atual.

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

Copia os caracteres de um segmento especificado desta instância para um segmento especificado de uma matriz Char de destino.

CopyTo(Int32, Span<Char>, Int32)

Copia os caracteres de um segmento especificado desta instância para um intervalo Char de destino.

EnsureCapacity(Int32)

Garante que a capacidade desta instância do StringBuilder tenha pelo menos o valor especificado.

Equals(Object)

Determina se o objeto especificado é igual ao objeto atual.

(Herdado de Object)
Equals(ReadOnlySpan<Char>)

Retorna um valor que indica se os caracteres nessa instância são iguais aos caracteres em um intervalo de caracteres somente leitura especificado.

Equals(StringBuilder)

Retorna um valor que indica se a instância é igual a um objeto especificado.

GetChunks()

Retorna um objeto que pode ser usado para iterar nas partes de caracteres representadas em um ReadOnlyMemory<Char> criado usando essa instância de StringBuilder.

GetHashCode()

Serve como a função de hash padrão.

(Herdado de Object)
GetType()

Obtém o Type da instância atual.

(Herdado de Object)
Insert(Int32, Boolean)

Insere a representação de cadeia de caracteres de um valor booliano nessa instância na posição do caractere especificada.

Insert(Int32, Byte)

Insere a representação de cadeia de caracteres de um inteiro sem sinal de 8 bits especificado nessa instância na posição do caractere especificada.

Insert(Int32, Char)

Insere a representação de cadeia de caracteres de um caractere Unicode especificado nessa instância na posição do caractere especificada.

Insert(Int32, Char[])

Insere a representação de cadeia de caracteres de uma matriz de caracteres Unicode especificada nessa instância na posição do caractere especificada.

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

Insere a representação de cadeia de caracteres de uma submatriz de caracteres Unicode especificada nessa instância na posição do caractere especificada.

Insert(Int32, Decimal)

Insere a representação de cadeia de caracteres de um número decimal nessa instância na posição do caractere especificada.

Insert(Int32, Double)

Insere a representação de cadeia de caracteres de um número de ponto flutuante de precisão dupla nessa instância na posição do caractere especificada.

Insert(Int32, Int16)

Insere a representação de cadeia de caracteres de um inteiro com sinal de 16 bits especificado nessa instância na posição do caractere especificada.

Insert(Int32, Int32)

Insere a representação de cadeia de caracteres de um inteiro com sinal de 32 bits especificado nessa instância na posição do caractere especificada.

Insert(Int32, Int64)

Insere a representação de cadeia de caracteres de um inteiro com sinal de 64 bits nessa instância na posição do caractere especificada.

Insert(Int32, Object)

Insere a representação de cadeia de caracteres de um objeto nessa instância na posição do caractere especificada.

Insert(Int32, ReadOnlySpan<Char>)

Insere uma sequência de caracteres nesta instância na posição de caractere especificada.

Insert(Int32, SByte)

Insere a representação de cadeia de caracteres de um inteiro com sinal de 8 bits especificado nessa instância na posição do caractere especificada.

Insert(Int32, Single)

Insere a representação de cadeia de caracteres de um número de ponto flutuante de precisão simples nessa instância na posição do caractere especificada.

Insert(Int32, String)

Insere uma cadeia de caracteres nesta instância na posição do caractere especificado.

Insert(Int32, String, Int32)

Insere uma ou mais cópias de uma cadeia de caracteres especificada nesta instância na posição do caractere especificada.

Insert(Int32, UInt16)

Insere a representação de cadeia de caracteres de um inteiro sem sinal de 16 bits nessa instância na posição do caractere especificada.

Insert(Int32, UInt32)

Insere a representação de cadeia de caracteres de um inteiro sem sinal de 32 bits nessa instância na posição do caractere especificada.

Insert(Int32, UInt64)

Insere a representação de cadeia de caracteres de um inteiro sem sinal de 64 bits nessa instância na posição do caractere especificada.

MemberwiseClone()

Cria uma cópia superficial do Object atual.

(Herdado de Object)
Remove(Int32, Int32)

Remove o intervalo especificado de caracteres dessa instância.

Replace(Char, Char)

Substitui todas as ocorrências de um caractere especificado nesta instância por outro caractere especificado.

Replace(Char, Char, Int32, Int32)

Substitui, dentro de uma subcadeia dessa instância, todas as ocorrências um caractere especificado por outro caractere especificado.

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

Representa uma cadeia de caracteres mutável. Essa classe não pode ser herdada.

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

Representa uma cadeia de caracteres mutável. Essa classe não pode ser herdada.

Replace(String, String)

Substitui todas as ocorrências de uma cadeia de caracteres especificada nesta instância por outra cadeia de caracteres especificada.

Replace(String, String, Int32, Int32)

Substitui, dentro de uma subcadeia dessa instância, todas as ocorrências de uma cadeia de caracteres especificada por outra cadeia de caracteres especificada.

ToString()

Converte o valor dessa instância em um String.

ToString(Int32, Int32)

Converte o valor de uma subcadeia de caracteres dessa instância em um String.

Implantações explícitas de interface

ISerializable.GetObjectData(SerializationInfo, StreamingContext)

Popula um objeto SerializationInfo com os dados necessários para desserializar o objeto StringBuilder atual.

Aplica-se a

Confira também