StringBuilder Classe

Definizione

Rappresenta una stringa modificabile di caratteri. La classe non può essere ereditata.

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
Ereditarietà
StringBuilder
Attributi
Implementazioni

Esempio

Nell'esempio seguente viene illustrato come chiamare molti dei metodi definiti dalla 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

Commenti

Per altre informazioni su questa API, vedere Osservazioni api supplementari per StringBuilder.

Note per i chiamanti

In .NET Core e in .NET Framework 4.0 e versioni successive, quando si crea un'istanza dell'oggetto chiamando il StringBuilderStringBuilder(Int32, Int32) costruttore, sia la lunghezza che la capacità dell'istanza StringBuilder possono crescere oltre il valore della relativa MaxCapacity proprietà. Ciò può verificarsi in particolare quando si chiamano i Append(String) metodi e AppendFormat(String, Object) per aggiungere stringhe di piccole dimensioni.

Costruttori

StringBuilder()

Inizializza una nuova istanza della classe StringBuilder.

StringBuilder(Int32)

Inizializza una nuova istanza della classe StringBuilder usando la capacità specificata.

StringBuilder(Int32, Int32)

Inizializza una nuova istanza della classe StringBuilder che inizia con una capacità specificata e può raggiungere un valore massimo specificato.

StringBuilder(String)

Inizializza una nuova istanza della classe StringBuilder usando la stringa specificata.

StringBuilder(String, Int32)

Inizializza una nuova istanza della classe StringBuilder usando la stringa e la capacità specificate.

StringBuilder(String, Int32, Int32, Int32)

Inizializza una nuova istanza della classe StringBuilder dalla sottostringa e la capacità specificate.

Proprietà

Capacity

Ottiene o imposta il numero massimo di caratteri che possono essere contenuti nella memoria allocata dall'istanza corrente.

Chars[Int32]

Ottiene o imposta il carattere nella posizione del carattere specificata in questa istanza.

Length

Ottiene o imposta la lunghezza dell'oggetto StringBuilder corrente.

MaxCapacity

Ottiene la capacità massima di questa istanza.

Metodi

Append(Boolean)

Accoda la rappresentazione di stringa di un valore booleano specificato a questa istanza.

Append(Byte)

Accoda la rappresentazione di stringa di un intero senza segno a 8 bit specificato a questa istanza.

Append(Char)

Accoda la rappresentazione di stringa di un oggetto Char specificato a questa istanza.

Append(Char*, Int32)

Accoda a questa istanza una matrice di caratteri Unicode a partire da un indirizzo specificato.

Append(Char, Int32)

Accoda un numero specificato di copie della rappresentazione di stringa di un carattere Unicode a questa istanza.

Append(Char[])

Accoda la rappresentazione di stringa dei caratteri Unicode in una matrice specificata a questa istanza.

Append(Char[], Int32, Int32)

Accoda la rappresentazione di stringa di una sottomatrice specificata di caratteri Unicode a questa istanza.

Append(Decimal)

Accoda la rappresentazione di stringa di un numero decimale specificato a questa istanza.

Append(Double)

Accoda la rappresentazione di stringa di un numero a virgola mobile e precisione doppia specificato a questa istanza.

Append(IFormatProvider, StringBuilder+AppendInterpolatedStringHandler)

Accoda la stringa interpolata specificata a questa istanza usando il formato specificato.

Append(Int16)

Accoda la rappresentazione di stringa di un intero con segno a 16 bit specificato a questa istanza.

Append(Int32)

Accoda la rappresentazione di stringa di un intero con segno a 32 bit specificato a questa istanza.

Append(Int64)

Accoda la rappresentazione di stringa di un intero con segno a 64 bit specificato a questa istanza.

Append(Object)

Accoda la rappresentazione di stringa di un oggetto specificato a questa istanza.

Append(ReadOnlyMemory<Char>)

Accoda a questa istanza la rappresentazione stringa di un'area di memoria dei caratteri di sola lettura specificata.

Append(ReadOnlySpan<Char>)

Accoda a questa istanza la rappresentazione stringa di un intervallo di caratteri di sola lettura specificato.

Append(SByte)

Accoda la rappresentazione di stringa di un intero con segno a 8 bit specificato a questa istanza.

Append(Single)

Accoda la rappresentazione di stringa di un numero a virgola mobile a precisione singola specificato a questa istanza.

Append(String)

Accoda una copia della stringa specificata a questa istanza.

Append(String, Int32, Int32)

Accoda una copia della sottostringa specificata a questa istanza.

Append(StringBuilder)

Accoda la rappresentazione stringa di un generatore di stringhe specificato a questa istanza.

Append(StringBuilder, Int32, Int32)

Accoda a questa istanza una copia di una sottostringa all'interno di un generatore di stringhe specificato.

Append(StringBuilder+AppendInterpolatedStringHandler)

Aggiunge la stringa interpolata specificata a questa istanza.

Append(UInt16)

Accoda la rappresentazione di stringa di un intero senza segno a 16 bit specificato a questa istanza.

Append(UInt32)

Accoda la rappresentazione di stringa di un intero senza segno a 32 bit specificato a questa istanza.

Append(UInt64)

Accoda la rappresentazione di stringa di un intero senza segno a 64 bit specificato a questa istanza.

AppendFormat(IFormatProvider, CompositeFormat, Object[])

Accoda la stringa restituita dall'elaborazione di una stringa in formato composito, che contiene zero o più elementi di formato, a questa istanza. Ogni elemento di formato viene sostituito dalla rappresentazione di stringa di uno qualsiasi degli argomenti usando un provider di formato specificato.

AppendFormat(IFormatProvider, CompositeFormat, ReadOnlySpan<Object>)

Accoda la stringa restituita dall'elaborazione di una stringa in formato composito, che contiene zero o più elementi di formato, a questa istanza. Ogni elemento di formato viene sostituito dalla rappresentazione di stringa di uno qualsiasi degli argomenti usando un provider di formato specificato.

AppendFormat(IFormatProvider, String, Object)

Accoda la stringa restituita dall'elaborazione di una stringa in formato composito, che contiene zero o più elementi di formato, a questa istanza. Ogni elemento di formato viene sostituito dalla rappresentazione di stringa di un singolo argomento usando un provider del formato specificato.

AppendFormat(IFormatProvider, String, Object, Object)

Accoda la stringa restituita dall'elaborazione di una stringa in formato composito, che contiene zero o più elementi di formato, a questa istanza. Ogni elemento di formato viene sostituito dalla rappresentazione di stringa di uno di due argomenti usando un provider del formato specificato.

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

Accoda la stringa restituita dall'elaborazione di una stringa in formato composito, che contiene zero o più elementi di formato, a questa istanza. Ogni elemento di formato viene sostituito dalla rappresentazione di stringa di uno di tre argomenti usando un provider del formato specificato.

AppendFormat(IFormatProvider, String, Object[])

Accoda la stringa restituita dall'elaborazione di una stringa in formato composito, che contiene zero o più elementi di formato, a questa istanza. Ogni elemento di formato viene sostituito dalla rappresentazione di stringa di un argomento corrispondente in una matrice di parametri usando un provider del formato specificato.

AppendFormat(String, Object)

Accoda la stringa restituita dall'elaborazione di una stringa in formato composito, che contiene zero o più elementi di formato, a questa istanza. Ogni elemento di formato viene sostituito dalla rappresentazione di stringa di un singolo argomento.

AppendFormat(String, Object, Object)

Accoda la stringa restituita dall'elaborazione di una stringa in formato composito, che contiene zero o più elementi di formato, a questa istanza. Ogni elemento di formato viene sostituito dalla rappresentazione di stringa di uno dei due argomenti.

AppendFormat(String, Object, Object, Object)

Accoda la stringa restituita dall'elaborazione di una stringa in formato composito, che contiene zero o più elementi di formato, a questa istanza. Ogni elemento di formato viene sostituito dalla rappresentazione di stringa di uno dei tre argomenti.

AppendFormat(String, Object[])

Accoda la stringa restituita dall'elaborazione di una stringa in formato composito, che contiene zero o più elementi di formato, a questa istanza. Ogni elemento di formato viene sostituito dalla rappresentazione di stringa di un argomento corrispondente in una matrice di parametri.

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

Accoda la stringa restituita dall'elaborazione di una stringa in formato composito, che contiene zero o più elementi di formato, a questa istanza. Ogni elemento di formato viene sostituito dalla rappresentazione di stringa di uno qualsiasi degli argomenti usando un provider di formato specificato.

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

Accoda la stringa restituita dall'elaborazione di una stringa in formato composito, che contiene zero o più elementi di formato, a questa istanza. Ogni elemento di formato viene sostituito dalla rappresentazione di stringa di uno qualsiasi degli argomenti usando un provider di formato specificato.

AppendFormat<TArg0>(IFormatProvider, CompositeFormat, TArg0)

Accoda la stringa restituita dall'elaborazione di una stringa in formato composito, che contiene zero o più elementi di formato, a questa istanza. Ogni elemento di formato viene sostituito dalla rappresentazione di stringa di uno qualsiasi degli argomenti usando un provider di formato specificato.

AppendJoin(Char, Object[])

Concatena le rappresentazioni stringa degli elementi nella matrice di oggetti fornita usando il separatore di caratteri specificato tra i membri, quindi accoda il risultato nell'istanza corrente del generatore di stringhe.

AppendJoin(Char, String[])

Concatena le stringhe della matrice fornita usando il separatore di caratteri specificato tra ogni stringa, quindi accoda il risultato nell'istanza corrente del generatore di stringhe.

AppendJoin(String, Object[])

Concatena le rappresentazioni stringa degli elementi nella matrice di oggetti fornita usando il separatore specificato tra i membri, quindi accoda il risultato nell'istanza corrente del generatore di stringhe.

AppendJoin(String, String[])

Concatena le stringhe della matrice fornita usando il separatore specificato tra ogni stringa, quindi accoda il risultato nell'istanza corrente del generatore di stringhe.

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

Concatena e accoda i membri di una raccolta usando il separatore di caratteri specificato tra i membri.

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

Concatena e accoda i membri di una raccolta usando il separatore specificato tra i membri.

AppendLine()

Accoda il terminatore di riga predefinito alla fine dell'oggetto StringBuilder corrente.

AppendLine(IFormatProvider, StringBuilder+AppendInterpolatedStringHandler)

Aggiunge la stringa interpolata specificata utilizzando il formato specificato, seguito dal carattere di terminazione di riga predefinito, alla fine dell'oggetto StringBuilder corrente.

AppendLine(String)

Accoda una copia della stringa specificata seguita dal terminatore di riga predefinito alla fine dell'oggetto StringBuilder corrente.

AppendLine(StringBuilder+AppendInterpolatedStringHandler)

Aggiunge la stringa interpolata specificata seguita dal terminatore di riga predefinito alla fine dell'oggetto StringBuilder corrente.

Clear()

Rimuove tutti i caratteri dall'istanza di StringBuilder corrente.

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

Copia i caratteri da un segmento specificato di questa istanza a un segmento specificato di una matrice Char di destinazione.

CopyTo(Int32, Span<Char>, Int32)

Copia i caratteri da un segmento specificato di questa istanza a un intervallo Char di destinazione.

EnsureCapacity(Int32)

Garantisce che la capacità di questa istanza di StringBuilder corrisponda almeno al valore specificato.

Equals(Object)

Determina se l'oggetto specificato è uguale all'oggetto corrente.

(Ereditato da Object)
Equals(ReadOnlySpan<Char>)

Restituisce un valore che indica se i caratteri in questa istanza sono uguali ai caratteri in un intervallo di caratteri specificato di sola lettura.

Equals(StringBuilder)

Restituisce un valore che indica se questa istanza è uguale a un oggetto specificato.

GetChunks()

Restituisce un oggetto che può essere usato per scorrere i blocchi di caratteri rappresentati in un ReadOnlyMemory<Char> creato da questa istanza di StringBuilder.

GetHashCode()

Funge da funzione hash predefinita.

(Ereditato da Object)
GetType()

Ottiene l'oggetto Type dell'istanza corrente.

(Ereditato da Object)
Insert(Int32, Boolean)

Inserisce la rappresentazione di stringa di un valore booleano in questa istanza nella posizione del carattere specificata.

Insert(Int32, Byte)

Inserisce la rappresentazione di stringa di un intero senza segno a 8 bit specificato in questa istanza nella posizione del carattere specificata.

Insert(Int32, Char)

Inserisce la rappresentazione di stringa di un carattere Unicode specificato in questa istanza nella posizione del carattere specificata.

Insert(Int32, Char[])

Inserisce la rappresentazione di stringa di una matrice specificata di caratteri Unicode in questa istanza nella posizione del carattere specificata.

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

Inserisce la rappresentazione di stringa di una sottomatrice specificata di caratteri Unicode in questa istanza nella posizione del carattere specificata.

Insert(Int32, Decimal)

Inserisce la rappresentazione di stringa di un numero decimale in questa istanza nella posizione del carattere specificata.

Insert(Int32, Double)

Inserisce la rappresentazione di stringa di un numero a virgola mobile a precisione doppia in questa istanza nella posizione del carattere specificata.

Insert(Int32, Int16)

Inserisce la rappresentazione di stringa di un intero con segno a 16 bit specificato in questa istanza nella posizione del carattere specificata.

Insert(Int32, Int32)

Inserisce la rappresentazione di stringa di un intero con segno a 32 bit specificato in questa istanza nella posizione del carattere specificata.

Insert(Int32, Int64)

Inserisce la rappresentazione di stringa di un intero con segno a 64 bit in questa istanza nella posizione del carattere specificata.

Insert(Int32, Object)

Inserisce la rappresentazione di stringa di un oggetto in questa istanza nella posizione del carattere specificata.

Insert(Int32, ReadOnlySpan<Char>)

Inserisce la sequenza di caratteri in questa istanza nella posizione del carattere specificata.

Insert(Int32, SByte)

Inserisce la rappresentazione di stringa di un intero con segno a 8 bit specificato in questa istanza nella posizione del carattere specificata.

Insert(Int32, Single)

Inserisce la rappresentazione di stringa di un numero a virgola mobile a precisione singola in questa istanza nella posizione del carattere specificata.

Insert(Int32, String)

Inserisce una stringa in questa istanza nella posizione del carattere specificata.

Insert(Int32, String, Int32)

Inserisce una o più copie di una stringa specificata in questa istanza nella posizione del carattere specificata.

Insert(Int32, UInt16)

Inserisce la rappresentazione di stringa di un intero senza segno a 16 bit in questa istanza nella posizione del carattere specificata.

Insert(Int32, UInt32)

Inserisce la rappresentazione di stringa di un intero senza segno a 32 bit in questa istanza nella posizione del carattere specificata.

Insert(Int32, UInt64)

Inserisce la rappresentazione di stringa di un intero senza segno a 64 bit in questa istanza nella posizione del carattere specificata.

MemberwiseClone()

Crea una copia superficiale dell'oggetto Object corrente.

(Ereditato da Object)
Remove(Int32, Int32)

Rimuove l'intervallo di caratteri specificato da questa istanza.

Replace(Char, Char)

Sostituisce tutte le occorrenze di un carattere specificato in questa istanza con un altro carattere specificato.

Replace(Char, Char, Int32, Int32)

Sostituisce tutte le occorrenze di un carattere specificato in una sottostringa di questa istanza con un altro carattere specificato.

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

Rappresenta una stringa modificabile di caratteri. La classe non può essere ereditata.

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

Rappresenta una stringa modificabile di caratteri. La classe non può essere ereditata.

Replace(String, String)

Sostituisce tutte le occorrenze di una stringa specificata in questa istanza con un'altra stringa specificata.

Replace(String, String, Int32, Int32)

Sostituisce tutte le occorrenze di una stringa specificata in una sottostringa di questa istanza con un'altra stringa specificata.

ToString()

Converte il valore di questa istanza in un oggetto String.

ToString(Int32, Int32)

Converte il valore di una sottostringa di questa istanza in un oggetto String.

Implementazioni dell'interfaccia esplicita

ISerializable.GetObjectData(SerializationInfo, StreamingContext)

Popola un oggetto SerializationInfo con i dati necessari per deserializzare l'oggetto StringBuilder corrente.

Si applica a

Vedi anche