StringBuilder Clase

Definición

Representa una cadena de caracteres mutable. Esta clase no puede heredarse.

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
Herencia
StringBuilder
Atributos
Implementaciones

Ejemplos

En el ejemplo siguiente se muestra cómo llamar a muchos de los métodos definidos por la StringBuilder clase .

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

Comentarios

Para obtener más información sobre esta API, consulte Comentarios complementarios de api para StringBuilder.

Notas a los autores de las llamadas

En .NET Core y en .NET Framework 4.0 y versiones posteriores, cuando se crea una instancia del StringBuilder objeto llamando al StringBuilder(Int32, Int32) constructor, tanto la longitud como la capacidad de la StringBuilder instancia pueden crecer más allá del valor de su MaxCapacity propiedad. Esto puede ocurrir especialmente cuando se llama a los Append(String) métodos y AppendFormat(String, Object) para anexar cadenas pequeñas.

Constructores

StringBuilder()

Inicializa una nueva instancia de la clase StringBuilder.

StringBuilder(Int32)

Inicializa una nueva instancia de la clase StringBuilder con la capacidad especificada.

StringBuilder(Int32, Int32)

Inicializa una nueva instancia de la clase StringBuilder que empieza con una capacidad concreta y puede aumentar hasta un máximo especificado.

StringBuilder(String)

Inicializa una nueva instancia de la clase StringBuilder con la cadena especificada.

StringBuilder(String, Int32)

Inicializa una nueva instancia de la clase StringBuilder con la capacidad y la cadena especificadas.

StringBuilder(String, Int32, Int32, Int32)

Inicializa una nueva instancia de la clase StringBuilder a partir de la subcadena y la capacidad especificadas.

Propiedades

Capacity

Obtiene o establece el número máximo de caracteres que puede contener la memoria asignada por la instancia en uso.

Chars[Int32]

Obtiene o establece el carácter en la posición de carácter especificada en la instancia.

Length

Obtiene o establece la longitud del objeto StringBuilder actual.

MaxCapacity

Obtiene la capacidad máxima de la instancia.

Métodos

Append(Boolean)

Anexa a esta instancia la representación en forma de cadena de un valor booleano especificado.

Append(Byte)

Anexa a esta instancia la representación en forma de cadena de un entero sin signo de 8 bits especificado.

Append(Char)

Anexa a esta instancia la representación en forma de cadena de un objeto Char especificado.

Append(Char*, Int32)

Anexa a esta instancia una matriz de caracteres Unicode a partir de una dirección especificada.

Append(Char, Int32)

Anexa a esta instancia un número especificado de copias de la representación en forma de cadena de un carácter Unicode.

Append(Char[])

Anexa a esta instancia la representación en forma de cadena de los caracteres Unicode de una matriz especificada.

Append(Char[], Int32, Int32)

Anexa a esta instancia la representación en forma de cadena de una submatriz de caracteres Unicode especificada.

Append(Decimal)

Anexa a esta instancia la representación en forma de cadena de un número decimal especificado.

Append(Double)

Anexa a esta instancia la representación en forma de cadena de un número de punto flotante de precisión doble especificado.

Append(IFormatProvider, StringBuilder+AppendInterpolatedStringHandler)

Anexa la cadena interpolada especificada a esta instancia con el formato especificado.

Append(Int16)

Anexa a esta instancia la representación en forma de cadena de un entero con signo de 16 bits especificado.

Append(Int32)

Anexa a esta instancia la representación en forma de cadena de un entero con signo de 32 bits especificado.

Append(Int64)

Anexa a esta instancia la representación en forma de cadena de un entero con signo de 64 bits especificado.

Append(Object)

Anexa a esta instancia la representación en forma de cadena de un objeto especificado.

Append(ReadOnlyMemory<Char>)

Anexa a esta instancia la representación en forma de cadena de una región de memoria de carácter de solo lectura especificado.

Append(ReadOnlySpan<Char>)

Anexa a esta instancia la representación en forma de cadena de un intervalo de caracteres de solo lectura especificado.

Append(SByte)

Anexa a esta instancia la representación en forma de cadena de un entero con signo de 8 bits especificado.

Append(Single)

Anexa a esta instancia la representación en forma de cadena de un número de punto flotante de precisión sencilla especificado.

Append(String)

Anexa a esta instancia una copia de la cadena especificada.

Append(String, Int32, Int32)

Anexa a esta instancia una copia de una subcadena especificada.

Append(StringBuilder)

Anexa a esta instancia la representación en forma de cadena de un generador de cadena especificado.

Append(StringBuilder, Int32, Int32)

Anexa a esta instancia una copia de una subcadena dentro de un generador de cadena especificado.

Append(StringBuilder+AppendInterpolatedStringHandler)

Anexa la cadena interpolada especificada a esta instancia.

Append(UInt16)

Anexa a esta instancia la representación en forma de cadena de un entero sin signo de 16 bits especificado.

Append(UInt32)

Anexa a esta instancia la representación en forma de cadena de un entero sin signo de 32 bits especificado.

Append(UInt64)

Anexa a esta instancia la representación en forma de cadena de un entero sin signo de 64 bits especificado.

AppendFormat(IFormatProvider, CompositeFormat, Object[])

Anexa a esta instancia la cadena que se devuelve al procesar una cadena con formato compuesto, que contiene cero o más elementos de formato. Cada elemento de formato se reemplaza por la representación de cadena de cualquiera de los argumentos mediante un proveedor de formato especificado.

AppendFormat(IFormatProvider, CompositeFormat, ReadOnlySpan<Object>)

Anexa a esta instancia la cadena que se devuelve al procesar una cadena con formato compuesto, que contiene cero o más elementos de formato. Cada elemento de formato se reemplaza por la representación de cadena de cualquiera de los argumentos mediante un proveedor de formato especificado.

AppendFormat(IFormatProvider, String, Object)

Anexa a esta instancia la cadena que se devuelve al procesar una cadena con formato compuesto, que contiene cero o más elementos de formato. Cada elemento de formato se reemplaza por la representación en forma de cadena de un único argumento utilizando un proveedor de formato especificado.

AppendFormat(IFormatProvider, String, Object, Object)

Anexa a esta instancia la cadena que se devuelve al procesar una cadena con formato compuesto, que contiene cero o más elementos de formato. Cada elemento de formato se reemplaza por la representación de cadena de dos argumentos utilizando un proveedor de formato especificado.

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

Anexa a esta instancia la cadena que se devuelve al procesar una cadena con formato compuesto, que contiene cero o más elementos de formato. Cada elemento de formato se reemplaza por la representación de cadena de tres argumentos utilizando un proveedor de formato especificado.

AppendFormat(IFormatProvider, String, Object[])

Anexa a esta instancia la cadena que se devuelve al procesar una cadena con formato compuesto, que contiene cero o más elementos de formato. Cada elemento de formato se reemplaza con la representación de cadena del argumento correspondiente de una matriz de parámetros, utilizando el proveedor de formato especificado.

AppendFormat(String, Object)

Anexa a esta instancia la cadena que se devuelve al procesar una cadena con formato compuesto, que contiene cero o más elementos de formato. Cada elemento de formato se reemplaza por la representación en forma de cadena de un único argumento.

AppendFormat(String, Object, Object)

Anexa a esta instancia la cadena que se devuelve al procesar una cadena con formato compuesto, que contiene cero o más elementos de formato. Cada elemento de formato se reemplaza por la representación en forma de cadena de uno de dos argumentos.

AppendFormat(String, Object, Object, Object)

Anexa a esta instancia la cadena que se devuelve al procesar una cadena con formato compuesto, que contiene cero o más elementos de formato. Cada elemento de formato se reemplaza por la representación en forma de cadena de uno de tres argumentos.

AppendFormat(String, Object[])

Anexa a esta instancia la cadena que se devuelve al procesar una cadena con formato compuesto, que contiene cero o más elementos de formato. Cada elemento de formato se reemplaza por la representación de cadena del argumento correspondiente de una matriz de parámetros.

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

Anexa a esta instancia la cadena que se devuelve al procesar una cadena con formato compuesto, que contiene cero o más elementos de formato. Cada elemento de formato se reemplaza por la representación de cadena de cualquiera de los argumentos mediante un proveedor de formato especificado.

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

Anexa a esta instancia la cadena que se devuelve al procesar una cadena con formato compuesto, que contiene cero o más elementos de formato. Cada elemento de formato se reemplaza por la representación de cadena de cualquiera de los argumentos mediante un proveedor de formato especificado.

AppendFormat<TArg0>(IFormatProvider, CompositeFormat, TArg0)

Anexa a esta instancia la cadena que se devuelve al procesar una cadena con formato compuesto, que contiene cero o más elementos de formato. Cada elemento de formato se reemplaza por la representación de cadena de cualquiera de los argumentos mediante un proveedor de formato especificado.

AppendJoin(Char, Object[])

Concatena las representaciones de cadena de los elementos de la matriz de objetos proporcionada, con el separador de caracteres especificado entre cada miembro y, después, anexa el resultado a la instancia actual del generador de cadenas.

AppendJoin(Char, String[])

Concatena las cadenas de la matriz proporcionada, con el separador de caracteres especificado entre cada cadena y, después, anexa el resultado a la instancia actual del generador de cadenas.

AppendJoin(String, Object[])

Concatena las representaciones de cadena de los elementos de la matriz de objetos proporcionada, con el separador especificado entre cada miembro y, después, anexa el resultado a la instancia actual del generador de cadenas.

AppendJoin(String, String[])

Concatena las cadenas de la matriz proporcionada, con el separador especificado entre cada cadena y, después, anexa el resultado a la instancia actual del generador de cadenas.

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

Concatena y anexa los miembros de una colección, con el separador de caracteres especificado entre todos los miembros.

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

Concatena y anexa los miembros de una colección, con el separador especificado entre todos los miembros.

AppendLine()

Anexa el terminador de línea predeterminado al final del objeto StringBuilder actual.

AppendLine(IFormatProvider, StringBuilder+AppendInterpolatedStringHandler)

Anexa la cadena interpolada especificada con el formato especificado, seguido del terminador de línea predeterminado, al final del objeto StringBuilder actual.

AppendLine(String)

Anexa una copia de la cadena especificada seguida del terminador de línea predeterminado al final del objeto StringBuilder actual.

AppendLine(StringBuilder+AppendInterpolatedStringHandler)

Anexa la cadena interpolada especificada seguida del terminador de línea predeterminado al final del objeto StringBuilder actual.

Clear()

Quita todos los caracteres de la instancia de StringBuilder actual.

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

Copia los caracteres de un segmento especificado de esta instancia al segmento especificado de una matriz Char de destino.

CopyTo(Int32, Span<Char>, Int32)

Copia los caracteres de un segmento especificado de esta instancia en un intervalo Char de destino.

EnsureCapacity(Int32)

Garantiza que la capacidad de la instancia de StringBuilder corresponde como mínimo al valor especificado.

Equals(Object)

Determina si el objeto especificado es igual que el objeto actual.

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

Devuelve un valor que indica si los caracteres de esta instancia son iguales a los caracteres de un intervalo de caracteres especificado de solo lectura.

Equals(StringBuilder)

Devuelve un valor que indica si esta instancia equivale a un objeto especificado.

GetChunks()

Devuelve un objeto que se puede utilizar para recorrer en iteración los fragmentos de caracteres representados en un elemento ReadOnlyMemory<Char> creado a partir de esta instancia StringBuilder.

GetHashCode()

Sirve como la función hash predeterminada.

(Heredado de Object)
GetType()

Obtiene el Type de la instancia actual.

(Heredado de Object)
Insert(Int32, Boolean)

Inserta en la instancia la representación en forma de cadena de un valor booleano en la posición del carácter que se haya especificado.

Insert(Int32, Byte)

Inserta en la instancia la representación en forma de cadena de un entero de 8 bits sin signo, en la posición del carácter que se haya especificado.

Insert(Int32, Char)

Inserta en la instancia la representación en forma de cadena de un carácter Unicode concreto en la posición del carácter que se haya especificado.

Insert(Int32, Char[])

Inserta en la instancia la representación en forma de cadena de una matriz concreta de caracteres Unicode en la posición del carácter que se haya especificado.

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

Inserta en la instancia la representación en forma de cadena de una submatriz concreta de caracteres Unicode en la posición del carácter que se haya especificado.

Insert(Int32, Decimal)

Inserta en la instancia la representación en forma de cadena de un número decimal en la posición del carácter que se haya especificado.

Insert(Int32, Double)

Inserta en la instancia la representación en forma de cadena de un número de punto flotante de doble precisión en la posición del carácter que se haya especificado.

Insert(Int32, Int16)

Inserta en la instancia la representación en forma de cadena de un entero de 16 bits con signo especificado, en la posición del carácter que se haya indicado.

Insert(Int32, Int32)

Inserta en la instancia la representación en forma de cadena de un entero de 32 bits con signo especificado, en la posición del carácter que se haya indicado.

Insert(Int32, Int64)

Inserta en la instancia la representación en forma de cadena de un entero de 64 bits con signo, en la posición del carácter que se haya especificado.

Insert(Int32, Object)

Inserta en la instancia la representación en forma de cadena de un objeto en la posición del carácter que se haya especificado.

Insert(Int32, ReadOnlySpan<Char>)

Inserta la secuencia de caracteres en esta instancia, en la posición de carácter especificada.

Insert(Int32, SByte)

Inserta en la instancia la representación en forma de cadena de un entero de 8 bits con signo especificado, en la posición del carácter que se haya indicado.

Insert(Int32, Single)

Inserta en la instancia la representación en forma de cadena de un número de punto flotante de precisión sencilla, en la posición del carácter que se haya especificado.

Insert(Int32, String)

Inserta una cadena en la instancia en la posición del carácter que se haya especificado.

Insert(Int32, String, Int32)

Inserta en la instancia una o más copias de una cadena concreta en la posición del carácter que se haya especificado.

Insert(Int32, UInt16)

Inserta en la instancia la representación en forma de cadena de un entero de 16 bits sin signo, en la posición del carácter que se haya especificado.

Insert(Int32, UInt32)

Inserta en la instancia la representación en forma de cadena de un entero de 32 bits sin signo, en la posición del carácter que se haya especificado.

Insert(Int32, UInt64)

Inserta en la instancia la representación en forma de cadena de un entero de 64 bits sin signo, en la posición del carácter que se haya especificado.

MemberwiseClone()

Crea una copia superficial del Object actual.

(Heredado de Object)
Remove(Int32, Int32)

Quita de la instancia el intervalo de caracteres especificado.

Replace(Char, Char)

Reemplaza todas las apariciones de un carácter en la instancia por otro carácter especificado.

Replace(Char, Char, Int32, Int32)

En una subcadena de la instancia, reemplaza todas las apariciones de un carácter especificado por otro carácter especificado.

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

Representa una cadena de caracteres mutable. Esta clase no puede heredarse.

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

Representa una cadena de caracteres mutable. Esta clase no puede heredarse.

Replace(String, String)

Reemplaza todas las apariciones de una cadena especificada en la instancia por otra cadena especificada.

Replace(String, String, Int32, Int32)

En una subcadena de la instancia, reemplaza todas las apariciones de una cadena especificada por otra cadena especificada.

ToString()

Convierte el valor de la instancia en un objeto String.

ToString(Int32, Int32)

Convierte el valor de una subcadena de la instancia en un objeto String.

Implementaciones de interfaz explícitas

ISerializable.GetObjectData(SerializationInfo, StreamingContext)

Rellena un objeto SerializationInfo con los datos necesarios para deserializar el objeto StringBuilder actual.

Se aplica a

Consulte también