StringBuilder Classe

Definizione

Rappresenta una stringa modificabile di caratteri. Questa 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 classe StringBuilder.

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 supplementari sull'API 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 StringBuilder chiamando il costruttore StringBuilder(Int32, Int32), sia la lunghezza che la capacità dell'istanza di StringBuilder possono aumentare oltre il valore della relativa proprietà MaxCapacity. Ciò può verificarsi in particolare quando si chiamano i metodi Append(String) e AppendFormat(String, Object) per accodare stringhe di piccole dimensioni.

Costruttori

StringBuilder()

Inizializza una nuova istanza della classe StringBuilder.

StringBuilder(Int32)

Inizializza una nuova istanza della classe StringBuilder utilizzando 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 utilizzando la stringa specificata.

StringBuilder(String, Int32)

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

StringBuilder(String, Int32, Int32, Int32)

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

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 in corrispondenza della 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)

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

Append(Byte)

Aggiunge 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)

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

Append(Char, Int32)

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

Append(Char[])

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

Append(Char[], Int32, Int32)

Aggiunge la rappresentazione di stringa di una sottomaschera specificata di caratteri Unicode a questa istanza.

Append(Decimal)

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

Append(Double)

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

Append(IFormatProvider, StringBuilder+AppendInterpolatedStringHandler)

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

Append(Int16)

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

Append(Int32)

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

Append(Int64)

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

Append(Object)

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

Append(ReadOnlyMemory<Char>)

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

Append(ReadOnlySpan<Char>)

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

Append(SByte)

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

Append(Single)

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

Append(String)

Aggiunge una copia della stringa specificata a questa istanza.

Append(String, Int32, Int32)

Aggiunge una copia di una sottostringa specificata a questa istanza.

Append(StringBuilder)

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

Append(StringBuilder, Int32, Int32)

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

Append(StringBuilder+AppendInterpolatedStringHandler)

Accoda 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)

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

Append(UInt64)

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

AppendFormat(IFormatProvider, CompositeFormat, Object[])

Aggiunge la stringa restituita elaborando una stringa di 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>)

Aggiunge la stringa restituita elaborando una stringa di 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)

Aggiunge la stringa restituita elaborando una stringa di 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 di formato specificato.

AppendFormat(IFormatProvider, String, Object, Object)

Aggiunge la stringa restituita elaborando una stringa di 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 di formato specificato.

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

Aggiunge la stringa restituita elaborando una stringa di 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 di formato specificato.

AppendFormat(IFormatProvider, String, Object[])

Aggiunge la stringa restituita elaborando una stringa di 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 di formato specificato.

AppendFormat(IFormatProvider, String, ReadOnlySpan<Object>)

Aggiunge la stringa restituita elaborando una stringa di 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 un intervallo di parametri usando un provider di formato specificato.

AppendFormat(String, Object)

Aggiunge la stringa restituita elaborando una stringa di 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)

Aggiunge la stringa restituita elaborando una stringa di 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.

AppendFormat(String, Object, Object, Object)

Aggiunge la stringa restituita elaborando una stringa di 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.

AppendFormat(String, Object[])

Aggiunge la stringa restituita elaborando una stringa di 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(String, ReadOnlySpan<Object>)

Aggiunge la stringa restituita elaborando una stringa di 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 un intervallo di parametri.

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

Aggiunge la stringa restituita elaborando una stringa di 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)

Aggiunge la stringa restituita elaborando una stringa di 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)

Aggiunge la stringa restituita elaborando una stringa di 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 di stringa degli elementi nella matrice di oggetti fornita, utilizzando il separatore char specificato tra ogni membro, quindi accoda il risultato all'istanza corrente del generatore di stringhe.

AppendJoin(Char, ReadOnlySpan<Object>)

Concatena le rappresentazioni di stringa degli elementi nell'intervallo di oggetti specificato, usando il separatore char specificato tra ogni membro, quindi accoda il risultato all'istanza corrente del generatore di stringhe.

AppendJoin(Char, ReadOnlySpan<String>)

Concatena le stringhe dell'intervallo specificato, usando il separatore char specificato tra ogni stringa, quindi aggiunge il risultato all'istanza corrente del generatore di stringhe.

AppendJoin(Char, String[])

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

AppendJoin(String, Object[])

Concatena le rappresentazioni di stringa degli elementi nella matrice di oggetti fornita, usando il separatore specificato tra ogni membro, quindi aggiunge il risultato all'istanza corrente del generatore di stringhe.

AppendJoin(String, ReadOnlySpan<Object>)

Concatena le rappresentazioni di stringa degli elementi nell'intervallo di oggetti specificato, usando il separatore specificato tra ogni membro, quindi aggiunge il risultato all'istanza corrente del generatore di stringhe.

AppendJoin(String, ReadOnlySpan<String>)

Concatena le stringhe dell'intervallo specificato, usando il separatore specificato tra ogni stringa, quindi aggiunge il risultato all'istanza corrente del generatore di stringhe.

AppendJoin(String, String[])

Concatena le stringhe della matrice specificata, usando il separatore specificato tra ogni stringa, quindi aggiunge il risultato all'istanza corrente del generatore di stringhe.

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

Concatena e aggiunge i membri di una raccolta, utilizzando il separatore char specificato tra ogni membro.

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

Concatena e aggiunge i membri di una raccolta, utilizzando il separatore specificato tra ogni membro.

AppendLine()

Aggiunge il carattere di terminazione di riga predefinito alla fine dell'oggetto StringBuilder corrente.

AppendLine(IFormatProvider, StringBuilder+AppendInterpolatedStringHandler)

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

AppendLine(String)

Aggiunge 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 in un segmento specificato di una matrice di Char di destinazione.

CopyTo(Int32, Span<Char>, Int32)

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

EnsureCapacity(Int32)

Assicura che la capacità di questa istanza di StringBuilder sia almeno il 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 di sola lettura specificato.

Equals(StringBuilder)

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

GetChunks()

Restituisce un oggetto che può essere utilizzato 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 il Type dell'istanza corrente.

(Ereditato da Object)
Insert(Int32, Boolean)

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

Insert(Int32, Byte)

Inserisce la rappresentazione di stringa di un intero senza segno a 8 bit specificato in questa istanza in corrispondenza della 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 di caratteri Unicode specificata in questa istanza in corrispondenza della posizione del carattere specificata.

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

Inserisce la rappresentazione di stringa di una sottoarray specificata di caratteri Unicode in questa istanza in corrispondenza della posizione del carattere specificata.

Insert(Int32, Decimal)

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

Insert(Int32, Double)

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

Insert(Int32, Int16)

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

Insert(Int32, Int32)

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

Insert(Int32, Int64)

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

Insert(Int32, Object)

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

Insert(Int32, ReadOnlySpan<Char>)

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

Insert(Int32, SByte)

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

Insert(Int32, Single)

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

Insert(Int32, String)

Inserisce una stringa in questa istanza in corrispondenza della posizione del carattere specificata.

Insert(Int32, String, Int32)

Inserisce una o più copie di una stringa specificata in questa istanza in corrispondenza della 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 in corrispondenza della posizione del carattere specificata.

MemberwiseClone()

Crea una copia superficiale del Objectcorrente.

(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, all'interno di una sottostringa di questa istanza, tutte le occorrenze di un carattere specificato con un altro carattere specificato.

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

Sostituisce tutte le istanze di un intervallo di caratteri di sola lettura con un altro in questo generatore.

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

Sostituisce tutte le istanze di un intervallo di caratteri di sola lettura con un altro in parte di questo generatore.

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, all'interno di una sottostringa di questa istanza, tutte le occorrenze di una stringa specificata con un'altra stringa specificata.

ToString()

Converte il valore di questa istanza in un String.

ToString(Int32, Int32)

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

Implementazioni dell'interfaccia esplicita

ISerializable.GetObjectData(SerializationInfo, StreamingContext)

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

Metodi di estensione

Append(StringBuilder, StringSegment)

Aggiungere il StringSegment specificato al StringBuilder.

AppendRedacted(StringBuilder, Redactor, ReadOnlySpan<Char>)

Redacts potenzialmente sensibili dati e lo aggiunge a un'istanza di StringBuilder.

AppendRedacted(StringBuilder, Redactor, String)

Redacts potenzialmente sensibili dati e lo aggiunge a un'istanza di StringBuilder.

Si applica a

Vedi anche