StringBuilder.AppendFormat Methode

Definition

Fügt die Zeichenfolge, die durch Verarbeitung einer kombinierten Formatzeichenfolge mit 0 (null) oder mehr Formatelementen zurückgegeben wurde, an diese Instanz an. Jedes Formatelement wird durch die Zeichenfolgendarstellung eines entsprechenden Objektarguments ersetzt.

Überlädt

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

Fügt die Zeichenfolge, die durch Verarbeitung einer kombinierten Formatzeichenfolge mit 0 (null) oder mehr Formatelementen zurückgegeben wurde, an diese Instanz an. Jedes Formatelement wird durch die Zeichenfolgendarstellung eines der drei Argumente mit einem angegebenen Formatanbieter ersetzt.

AppendFormat(String, Object)

Fügt die Zeichenfolge, die durch Verarbeitung einer kombinierten Formatzeichenfolge mit 0 (null) oder mehr Formatelementen zurückgegeben wurde, an diese Instanz an. Jedes Formatelement wird durch die Zeichenfolgendarstellung eines einzelnen Arguments ersetzt.

AppendFormat(String, Object[])

Fügt die Zeichenfolge, die durch Verarbeitung einer kombinierten Formatzeichenfolge mit 0 (null) oder mehr Formatelementen zurückgegeben wurde, an diese Instanz an. Jedes Formatelement wird durch die Zeichenfolgendarstellung eines entsprechenden Arguments in einem Parameterarray ersetzt.

AppendFormat(IFormatProvider, String, Object)

Fügt die Zeichenfolge, die durch Verarbeitung einer kombinierten Formatzeichenfolge mit 0 (null) oder mehr Formatelementen zurückgegeben wurde, an diese Instanz an. Jedes Formatelement wird durch die Zeichenfolgendarstellung eines einzigen Arguments mit einem angegebenen Formatanbieter ersetzt.

AppendFormat(IFormatProvider, String, Object[])

Fügt die Zeichenfolge, die durch Verarbeitung einer kombinierten Formatzeichenfolge mit 0 (null) oder mehr Formatelementen zurückgegeben wurde, an diese Instanz an. Jedes Formatelement wird von der Zeichenfolgendarstellung eines entsprechenden Arguments in einem Parameterarray ersetzt, das einen angegebenen Formatanbieter verwendet.

AppendFormat(String, Object, Object)

Fügt die Zeichenfolge, die durch Verarbeitung einer kombinierten Formatzeichenfolge mit 0 (null) oder mehr Formatelementen zurückgegeben wurde, an diese Instanz an. Jedes Formatelement wird durch die Zeichenfolgendarstellung für eines von zwei Argumenten ersetzt.

AppendFormat(IFormatProvider, String, Object, Object)

Fügt die Zeichenfolge, die durch Verarbeitung einer kombinierten Formatzeichenfolge mit 0 (null) oder mehr Formatelementen zurückgegeben wurde, an diese Instanz an. Jedes Formatelement wird durch die Zeichenfolgendarstellung eines der zwei Argumente mit einem angegebenen Formatanbieter ersetzt.

AppendFormat(String, Object, Object, Object)

Fügt die Zeichenfolge, die durch Verarbeitung einer kombinierten Formatzeichenfolge mit 0 (null) oder mehr Formatelementen zurückgegeben wurde, an diese Instanz an. Jedes Formatelement wird durch die Zeichenfolgendarstellung für eines von drei Argumenten ersetzt.

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

Fügt die Zeichenfolge, die durch Verarbeitung einer kombinierten Formatzeichenfolge mit 0 (null) oder mehr Formatelementen zurückgegeben wurde, an diese Instanz an. Jedes Formatelement wird durch die Zeichenfolgendarstellung eines der drei Argumente mit einem angegebenen Formatanbieter ersetzt.

public:
 System::Text::StringBuilder ^ AppendFormat(IFormatProvider ^ provider, System::String ^ format, System::Object ^ arg0, System::Object ^ arg1, System::Object ^ arg2);
public System.Text.StringBuilder AppendFormat (IFormatProvider provider, string format, object arg0, object arg1, object arg2);
public System.Text.StringBuilder AppendFormat (IFormatProvider? provider, string format, object? arg0, object? arg1, object? arg2);
member this.AppendFormat : IFormatProvider * string * obj * obj * obj -> System.Text.StringBuilder
Public Function AppendFormat (provider As IFormatProvider, format As String, arg0 As Object, arg1 As Object, arg2 As Object) As StringBuilder

Parameter

provider
IFormatProvider

Ein Objekt, das kulturspezifische Formatierungsinformationen bereitstellt.

format
String

Eine kombinierte Formatzeichenfolge.

arg0
Object

Das erste zu formatierende Objekt.

arg1
Object

Das zweite zu formatierende Objekt.

arg2
Object

Das dritte zu formatierende Objekt.

Gibt zurück

StringBuilder

Ein Verweis auf diese Instanz, nachdem der Anfügevorgang abgeschlossen wurde. Nach dem Anfügevorgang enthält diese Instanz alle Daten, die auch vor dem Vorgang vorhanden waren. Ihnen folgt eine Kopie von format, wobei die Formatangabe durch die Zeichenfolgendarstellung des entsprechenden Objektarguments ersetzt wurde.

Ausnahmen

format ist null.

format ist ungültig.

- oder -

Der Index eines Formatelements ist kleiner als 0 (null) oder größer oder gleich 3 (drei).

Die Länge der erweiterten Zeichenfolge würde MaxCapacity überschreiten.

Beispiele

Im folgenden Beispiel wird die AppendFormat(IFormatProvider, String, Object, Object, Object) -Methode verwendet, um das Ergebnis eines booleschen Vorgangs mit ganzzahligen Werten zu veranschaulichen And . Beachten Sie, dass die Formatzeichenfolge sechs Formatelemente enthält, die Methode jedoch nur drei Elemente in der Argumentliste enthält, da jedes Element auf zwei verschiedene Arten formatiert ist.

using System;
using System.Globalization;
using System.Text;

public class Example
{
   public static void Main()
   {
      Random rnd = new Random();
      CultureInfo culture = CultureInfo.CreateSpecificCulture("fr-FR");
      StringBuilder sb = new StringBuilder();
      string formatString = "    {0,12:N0} ({0,8:X8})\n" +
                            "And {1,12:N0} ({1,8:X8})\n" +
                            "  = {2,12:N0} ({2,8:X8})\n";
      for (int ctr = 0; ctr <= 2; ctr++) {
         int value1 = rnd.Next();
         int value2 = rnd.Next();
         sb.AppendFormat(culture, formatString,
                         value1, value2, value1 & value2).
                         AppendLine();
      }
      Console.WriteLine(sb.ToString());
   }
}
// The example displays output like the following:
//           1 984 112 195 (76432643)
//       And 1 179 778 511 (4651FDCF)
//         = 1 178 674 243 (46412443)
//
//           2 034 813 710 (7948CB0E)
//       And  569 333 976 (21EF58D8)
//         =  558 385 160 (21484808)
//
//            126 717 735 (078D8F27)
//       And 1 830 715 973 (6D1E8245)
//         =   84 705 797 (050C8205)
Imports System.Globalization
Imports System.Text

Public Module Example
   Public Sub Main()
      Dim rnd As New Random()
      Dim culture As CultureInfo = CultureInfo.CreateSpecificCulture("fr-FR")
      Dim sb As New StringBuilder()
      Dim formatString As String = "    {0,12:N0} ({0,8:X8})" + vbCrLf +
                                   "And {1,12:N0} ({1,8:X8})" + vbCrLf +
                                   "  = {2,12:N0} ({2,8:X8})" + vbCrLf
      For ctr As Integer = 0 To 2
         Dim value1 As Integer = rnd.Next()
         Dim value2 As Integer = rnd.Next()
         sb.AppendFormat(culture, formatString,
                         value1, value2, value1 And value2).AppendLine()
      Next
      Console.WriteLine(sb.ToString())
   End Sub
End Module
' The example displays the following output:
'           1 984 112 195 (76432643)
'       And 1 179 778 511 (4651FDCF)
'         = 1 178 674 243 (46412443)
'
'           2 034 813 710 (7948CB0E)
'       And  569 333 976 (21EF58D8)
'         =  558 385 160 (21484808)
'
'            126 717 735 (078D8F27)
'       And 1 830 715 973 (6D1E8245)
'         =   84 705 797 (050C8205)

Hinweise

Diese Methode verwendet die zusammengesetzte Formatierungsfunktion des .NET Framework, um den Wert eines Objekts in seine Textdarstellung zu konvertieren und diese Darstellung in das aktuelle StringBuilder Objekt einzubetten.

Der format Parameter besteht aus 0 oder mehr Textläufen, die mit null oder mehr indizierten Platzhaltern, sogenannten Formatelementen, gemischt sind, die Objekten in der Parameterliste dieser Methode entsprechen. Der Formatierungsprozess ersetzt jedes Formatelement durch die Zeichenfolgendarstellung des entsprechenden Objekts.

Die Syntax eines Formatelements lautet wie folgt:

{index[,length][:formatString]}

Elemente in eckigen Klammern sind optional. In der folgenden Tabelle wird jedes Element beschrieben.

Element BESCHREIBUNG
Index Die nullbasierte Position in der Parameterliste des zu formatierenden Objekts. Wenn das durch index angegebene Objekt ist null, wird das Formatelement durch String.Emptyersetzt. Wenn an der Indexposition kein Parameter vorhanden ist, wird ein FormatException ausgelöst.
, länge Die Mindestanzahl von Zeichen in der Zeichenfolgendarstellung des Parameters. Wenn der Parameter positiv ist, ist er rechtsbündig ausgerichtet. wenn negativ, wird sie linksbündig ausgerichtet.
:formatString Eine standard- oder benutzerdefinierte Formatzeichenfolge, die vom -Parameter unterstützt wird.

Hinweis

Informationen zu den standard- und benutzerdefinierten Formatzeichenfolgen, die mit Datums- und Uhrzeitwerten verwendet werden, finden Sie unter Standardformatzeichenfolgen für Datum und Uhrzeit und benutzerdefinierte Formatzeichenfolgen für Datum und Uhrzeit. Informationen zu den standard- und benutzerdefinierten Formatzeichenfolgen, die mit numerischen Werten verwendet werden, finden Sie unter Standardmäßige numerische Formatzeichenfolgen und benutzerdefinierte numerische Formatzeichenfolgen. Informationen zu den Standardformatzeichenfolgen, die mit Enumerationen verwendet werden, finden Sie unter Enumerationsformatzeichenfolgen.

Der provider Parameter gibt eine IFormatProvider Implementierung an, die Formatierungsinformationen für arg0 und arg1bereitstellen kann. provider kann eine der folgenden Formen haben:

  • Ein CultureInfo -Objekt, das kulturspezifische Formatierungsinformationen bereitstellt.

  • Ein NumberFormatInfo -Objekt, das kulturspezifische Formatierungsinformationen für arg0 oder arg1 bereitstellt, wenn es sich um numerische Werte handelt.

  • Ein DateTimeFormatInfo -Objekt, das kulturspezifische Formatierungsinformationen für arg0, arg1oder arg2 bereitstellt, wenn es sich um Datums- und Uhrzeitwerte handelt.

  • Eine benutzerdefinierte IFormatProvider Implementierung, die Formatierungsinformationen für arg0, arg1und arg2bereitstellt. In der Regel implementiert eine solche Implementierung auch die ICustomFormatter -Schnittstelle.

Wenn der provider Parameter ist null, werden Formatanbieterinformationen aus der aktuellen Kultur abgerufen.

arg0, arg1und arg2 stellen die zu formatierenden Objekte dar. Jedes Formatelement in format wird durch die Zeichenfolgendarstellung des Objekts ersetzt, das über den entsprechenden Index verfügt. Wenn das Formatelement enthält formatString und das entsprechende Argument die IFormattable -Schnittstelle implementiert, definiert die -Methode des ToString(formatString, provider) Arguments die Formatierung. Andernfalls definiert die -Methode des ToString() Arguments die Formatierung.

Hinweise für Aufrufer

Wenn Sie in .NET Core und in der .NET Framework 4.0 und höheren Versionen das Objekt durch Aufrufen des StringBuilderStringBuilder(Int32, Int32) Konstruktors instanziieren, kann sowohl die Länge als auch die Kapazität der StringBuilder Instanz über den Wert ihrer MaxCapacity Eigenschaft hinaus wachsen. Dies kann insbesondere auftreten, wenn Sie die Append(String) Methoden und AppendFormat(String, Object) aufrufen, um kleine Zeichenfolgen anzufügen.

Siehe auch

Gilt für

AppendFormat(String, Object)

Fügt die Zeichenfolge, die durch Verarbeitung einer kombinierten Formatzeichenfolge mit 0 (null) oder mehr Formatelementen zurückgegeben wurde, an diese Instanz an. Jedes Formatelement wird durch die Zeichenfolgendarstellung eines einzelnen Arguments ersetzt.

public:
 System::Text::StringBuilder ^ AppendFormat(System::String ^ format, System::Object ^ arg0);
public System.Text.StringBuilder AppendFormat (string format, object arg0);
public System.Text.StringBuilder AppendFormat (string format, object? arg0);
member this.AppendFormat : string * obj -> System.Text.StringBuilder
Public Function AppendFormat (format As String, arg0 As Object) As StringBuilder

Parameter

format
String

Eine kombinierte Formatzeichenfolge.

arg0
Object

Ein zu formatierendes Objekt.

Gibt zurück

StringBuilder

Ein Verweis auf diese Instanz mit angefügtem format. Die einzelnen Elemente in format werden jeweils durch eine Zeichenfolgendarstellung von arg0 ersetzt.

Ausnahmen

format ist null.

format ist ungültig.

- oder -

Der Index eines Formatelements ist kleiner als 0 (null) oder größer gleich 1.

Die Länge der erweiterten Zeichenfolge würde MaxCapacity überschreiten.

Beispiele

Das folgende Beispiel veranschaulicht die AppendFormat Methode.

using namespace System;
using namespace System::Text;
using namespace System::Globalization;
void Show( StringBuilder^ sbs )
{
   Console::WriteLine( sbs );
   sbs->Length = 0;
}

int main()
{
   StringBuilder^ sb = gcnew StringBuilder;
   int var1 = 111;
   float var2 = 2.22F;
   String^ var3 = "abcd";
   array<Object^>^var4 = {3,4.4,(Char)'X'};
   Console::WriteLine();
   Console::WriteLine( "StringBuilder.AppendFormat method:" );
   sb->AppendFormat( "1) {0}", var1 );
   Show( sb );
   sb->AppendFormat( "2) {0}, {1}", var1, var2 );
   Show( sb );
   sb->AppendFormat( "3) {0}, {1}, {2}", var1, var2, var3 );
   Show( sb );
   sb->AppendFormat( "4) {0}, {1}, {2}", var4 );
   Show( sb );
   CultureInfo^ ci = gcnew CultureInfo( "es-ES",true );
   array<Object^>^temp1 = {var2};
   sb->AppendFormat( ci, "5) {0}", temp1 );
   Show( sb );
}

/*
This example produces the following results:

StringBuilder.AppendFormat method:
1) 111
2) 111, 2.22
3) 111, 2.22, abcd
4) 3, 4.4, X
5) 2,22
*/
using System;
using System.Text;
using System.Globalization;

class Sample
{
    static StringBuilder sb = new StringBuilder();

    public static void Main()
    {
    int    var1   = 111;
    float  var2   = 2.22F;
    string var3   = "abcd";
    object[] var4 = {3, 4.4, 'X'};

    Console.WriteLine();
    Console.WriteLine("StringBuilder.AppendFormat method:");
    sb.AppendFormat("1) {0}", var1);
    Show(sb);
    sb.AppendFormat("2) {0}, {1}", var1, var2);
    Show(sb);
    sb.AppendFormat("3) {0}, {1}, {2}", var1, var2, var3);
    Show(sb);
    sb.AppendFormat("4) {0}, {1}, {2}", var4);
    Show(sb);
    CultureInfo ci = new CultureInfo("es-ES", true);
    sb.AppendFormat(ci, "5) {0}", var2);
    Show(sb);
    }

    public static void Show(StringBuilder sbs)
    {
    Console.WriteLine(sbs.ToString());
    sb.Length = 0;
    }
}
/*
This example produces the following results:

StringBuilder.AppendFormat method:
1) 111
2) 111, 2.22
3) 111, 2.22, abcd
4) 3, 4.4, X
5) 2,22
*/
Imports System.Text
Imports System.Globalization

Class Sample
   Private Shared sb As New StringBuilder()

   Public Shared Sub Main()
      Dim var1 As Integer = 111
      Dim var2 As Single = 2.22F
      Dim var3 As String = "abcd"
      Dim var4 As Object() =  {3, 4.4, "X"c}
      
      Console.WriteLine()
      Console.WriteLine("StringBuilder.AppendFormat method:")
      sb.AppendFormat("1) {0}", var1)
      Show(sb)
      sb.AppendFormat("2) {0}, {1}", var1, var2)
      Show(sb)
      sb.AppendFormat("3) {0}, {1}, {2}", var1, var2, var3)
      Show(sb)
      sb.AppendFormat("4) {0}, {1}, {2}", var4)
      Show(sb)
      Dim ci As New CultureInfo("es-ES", True)
      sb.AppendFormat(ci, "5) {0}", var2)
      Show(sb)
   End Sub
   
   Public Shared Sub Show(sbs As StringBuilder)
      Console.WriteLine(sbs.ToString())
      sb.Length = 0
   End Sub
End Class
'
'This example produces the following results:
'
'StringBuilder.AppendFormat method:
'1) 111
'2) 111, 2.22
'3) 111, 2.22, abcd
'4) 3, 4.4, X
'5) 2,22

Hinweise

Diese Methode verwendet das zusammengesetzte Formatierungsfeature des .NET Framework, um den Wert eines Objekts in seine Textdarstellung zu konvertieren und diese Darstellung in das aktuelle StringBuilder Objekt einzubetten.

Der format Parameter besteht aus null oder mehr Textausführungen, die mit null oder mehr indizierten Platzhaltern vermischt sind, die als Formatelemente bezeichnet werden. Der Index der Formatelemente muss 0 sein, um dem einzelnen Objekt in der Parameterliste dieser Methode zu arg0entsprechen. Der Formatierungsprozess ersetzt jedes Formatelement durch die Zeichenfolgendarstellung von arg0.

Die Syntax eines Formatelements lautet wie folgt:

{index[,length][:formatString]}

Elemente in eckigen Klammern sind optional. In der folgenden Tabelle wird jedes Element beschrieben.

Element BESCHREIBUNG
Index Die nullbasierte Position in der Parameterliste des zu formatierenden Objekts. Wenn das durch index angegebene Objekt ist, wird nulldas Formatelement durch String.Emptyersetzt. Wenn in der Indexposition kein Parameter vorhanden ist, wird ein FormatException ausgelöst.
, Länge Die Mindestanzahl von Zeichen in der Zeichenfolgendarstellung des Parameters. Bei positivem Wert ist der Parameter rechtsbündig; wenn negativ, ist es linksbündig.
:formatString Eine Standard- oder benutzerdefinierte Formatzeichenfolge, die vom -Parameter unterstützt wird.

Hinweis

Informationen zu den Standard- und benutzerdefinierten Formatzeichenfolgen, die mit Datums- und Uhrzeitwerten verwendet werden, finden Sie unter Standarddatums- und Uhrzeitformatzeichenfolgen und benutzerdefinierte Datums- und Uhrzeitformatzeichenfolgen. Informationen zu standard- und benutzerdefinierten Formatzeichenfolgen, die mit numerischen Werten verwendet werden, finden Sie unter Numerische Standardformatzeichenfolgen und benutzerdefinierte numerische Formatzeichenfolgen. Informationen zu den Standardformatzeichenfolgen, die mit Enumerationen verwendet werden, finden Sie unter Enumerationsformatzeichenfolgen.

arg0 stellt das zu formatierende Objekt dar. Jedes Formatelement in format wird durch die Zeichenfolgendarstellung von arg0ersetzt. Wenn das Formatelement die IFormattable Schnittstelle enthält formatString und arg0 implementiert, arg0.ToString(formatString, null) definiert die Formatierung. arg0.ToString() Andernfalls definiert die Formatierung.

Wenn die zugewiesene format Zeichenfolge "Vielen Dank für Ihre Spende von {0:#####} Dosen lebensmittel an unsere gemeinnützige Organisation" lautet und arg0 eine ganze Zahl mit dem Wert 10 ist, lautet der Rückgabewert "Vielen Dank für Ihre Spende von 10 Dosen Lebensmittel an unsere gemeinnützige Organisation".

Hinweise für Aufrufer

Wenn Sie in .NET Core und in der .NET Framework 4.0 und höheren Versionen das Objekt durch Aufrufen des StringBuilderStringBuilder(Int32, Int32) Konstruktors instanziieren, kann sowohl die Länge als auch die Kapazität der StringBuilder Instanz über den Wert ihrer MaxCapacity Eigenschaft hinaus wachsen. Dies kann insbesondere auftreten, wenn Sie die Append(String) Methoden und AppendFormat(String, Object) aufrufen, um kleine Zeichenfolgen anzufügen.

Siehe auch

Gilt für

AppendFormat(String, Object[])

Fügt die Zeichenfolge, die durch Verarbeitung einer kombinierten Formatzeichenfolge mit 0 (null) oder mehr Formatelementen zurückgegeben wurde, an diese Instanz an. Jedes Formatelement wird durch die Zeichenfolgendarstellung eines entsprechenden Arguments in einem Parameterarray ersetzt.

public:
 System::Text::StringBuilder ^ AppendFormat(System::String ^ format, ... cli::array <System::Object ^> ^ args);
public System.Text.StringBuilder AppendFormat (string format, params object[] args);
public System.Text.StringBuilder AppendFormat (string format, params object?[] args);
member this.AppendFormat : string * obj[] -> System.Text.StringBuilder
Public Function AppendFormat (format As String, ParamArray args As Object()) As StringBuilder

Parameter

format
String

Eine kombinierte Formatzeichenfolge.

args
Object[]

Ein Array zu formatierender Objekte.

Gibt zurück

StringBuilder

Ein Verweis auf diese Instanz mit angefügtem format. Jedes Formatelement in format wird durch die Zeichenfolgendarstellung des entsprechenden Objektarguments ersetzt.

Ausnahmen

format oder args ist null.

format ist ungültig.

- oder -

Der Index eines Formatelements ist kleiner als 0 (null) oder größer oder gleich der Länge des args-Arrays.

Die Länge der erweiterten Zeichenfolge würde MaxCapacity überschreiten.

Beispiele

Das folgende Beispiel veranschaulicht die AppendFormat Methode.

using namespace System;
using namespace System::Text;
using namespace System::Globalization;
void Show( StringBuilder^ sbs )
{
   Console::WriteLine( sbs );
   sbs->Length = 0;
}

int main()
{
   StringBuilder^ sb = gcnew StringBuilder;
   int var1 = 111;
   float var2 = 2.22F;
   String^ var3 = "abcd";
   array<Object^>^var4 = {3,4.4,(Char)'X'};
   Console::WriteLine();
   Console::WriteLine( "StringBuilder.AppendFormat method:" );
   sb->AppendFormat( "1) {0}", var1 );
   Show( sb );
   sb->AppendFormat( "2) {0}, {1}", var1, var2 );
   Show( sb );
   sb->AppendFormat( "3) {0}, {1}, {2}", var1, var2, var3 );
   Show( sb );
   sb->AppendFormat( "4) {0}, {1}, {2}", var4 );
   Show( sb );
   CultureInfo^ ci = gcnew CultureInfo( "es-ES",true );
   array<Object^>^temp1 = {var2};
   sb->AppendFormat( ci, "5) {0}", temp1 );
   Show( sb );
}

/*
This example produces the following results:

StringBuilder.AppendFormat method:
1) 111
2) 111, 2.22
3) 111, 2.22, abcd
4) 3, 4.4, X
5) 2,22
*/
using System;
using System.Text;
using System.Globalization;

class Sample
{
    static StringBuilder sb = new StringBuilder();

    public static void Main()
    {
    int    var1   = 111;
    float  var2   = 2.22F;
    string var3   = "abcd";
    object[] var4 = {3, 4.4, 'X'};

    Console.WriteLine();
    Console.WriteLine("StringBuilder.AppendFormat method:");
    sb.AppendFormat("1) {0}", var1);
    Show(sb);
    sb.AppendFormat("2) {0}, {1}", var1, var2);
    Show(sb);
    sb.AppendFormat("3) {0}, {1}, {2}", var1, var2, var3);
    Show(sb);
    sb.AppendFormat("4) {0}, {1}, {2}", var4);
    Show(sb);
    CultureInfo ci = new CultureInfo("es-ES", true);
    sb.AppendFormat(ci, "5) {0}", var2);
    Show(sb);
    }

    public static void Show(StringBuilder sbs)
    {
    Console.WriteLine(sbs.ToString());
    sb.Length = 0;
    }
}
/*
This example produces the following results:

StringBuilder.AppendFormat method:
1) 111
2) 111, 2.22
3) 111, 2.22, abcd
4) 3, 4.4, X
5) 2,22
*/
Imports System.Text
Imports System.Globalization

Class Sample
   Private Shared sb As New StringBuilder()

   Public Shared Sub Main()
      Dim var1 As Integer = 111
      Dim var2 As Single = 2.22F
      Dim var3 As String = "abcd"
      Dim var4 As Object() =  {3, 4.4, "X"c}
      
      Console.WriteLine()
      Console.WriteLine("StringBuilder.AppendFormat method:")
      sb.AppendFormat("1) {0}", var1)
      Show(sb)
      sb.AppendFormat("2) {0}, {1}", var1, var2)
      Show(sb)
      sb.AppendFormat("3) {0}, {1}, {2}", var1, var2, var3)
      Show(sb)
      sb.AppendFormat("4) {0}, {1}, {2}", var4)
      Show(sb)
      Dim ci As New CultureInfo("es-ES", True)
      sb.AppendFormat(ci, "5) {0}", var2)
      Show(sb)
   End Sub
   
   Public Shared Sub Show(sbs As StringBuilder)
      Console.WriteLine(sbs.ToString())
      sb.Length = 0
   End Sub
End Class
'
'This example produces the following results:
'
'StringBuilder.AppendFormat method:
'1) 111
'2) 111, 2.22
'3) 111, 2.22, abcd
'4) 3, 4.4, X
'5) 2,22

Hinweise

Diese Methode verwendet das zusammengesetzte Formatierungsfeature des .NET Framework, um den Wert eines Objekts in seine Textdarstellung zu konvertieren und diese Darstellung in das aktuelle StringBuilder Objekt einzubetten.

Der format Parameter besteht aus null oder mehr Textausführungen, die mit null oder mehr indizierten Platzhaltern, sogenannten Formatelementen, vermischt sind, die Objekten in der Parameterliste dieser Methode entsprechen. Der Formatierungsprozess ersetzt jedes Formatelement durch die Zeichenfolgendarstellung des entsprechenden Objekts.

Die Syntax eines Formatelements lautet wie folgt:

{index[,length][:formatString]}

Elemente in eckigen Klammern sind optional. In der folgenden Tabelle wird jedes Element beschrieben.

Element BESCHREIBUNG
Index Die nullbasierte Position in der Parameterliste des zu formatierenden Objekts. Wenn das durch index angegebene Objekt ist, wird nulldas Formatelement durch String.Emptyersetzt. Wenn in der Indexposition kein Parameter vorhanden ist, wird ein FormatException ausgelöst.
, Länge Die Mindestanzahl von Zeichen in der Zeichenfolgendarstellung des Parameters. Bei positivem Wert ist der Parameter rechtsbündig; wenn negativ, ist es linksbündig.
:formatString Eine Standard- oder benutzerdefinierte Formatzeichenfolge, die vom -Parameter unterstützt wird.

Hinweis

Informationen zu den Standard- und benutzerdefinierten Formatzeichenfolgen, die mit Datums- und Uhrzeitwerten verwendet werden, finden Sie unter Standarddatums- und Uhrzeitformatzeichenfolgen und benutzerdefinierte Datums- und Uhrzeitformatzeichenfolgen. Informationen zu standard- und benutzerdefinierten Formatzeichenfolgen, die mit numerischen Werten verwendet werden, finden Sie unter Numerische Standardformatzeichenfolgen und benutzerdefinierte numerische Formatzeichenfolgen. Informationen zu den Standardformatzeichenfolgen, die mit Enumerationen verwendet werden, finden Sie unter Enumerationsformatzeichenfolgen.

args stellt die zu formatierenden Objekte dar. Jedes Formatelement in format wird durch die Zeichenfolgendarstellung des entsprechenden Objekts in argsersetzt. Wenn das Formatelement enthält formatString und das entsprechende Objekt in args die IFormattable Schnittstelle implementiert, args[index].ToString(formatString, provider) definiert die Formatierung. args[index].ToString() Andernfalls definiert die Formatierung.

Wenn die zugewiesene format Zeichenfolge "Vielen Dank für Ihre Spende von {0:#####} Dosen lebensmittel an unsere gemeinnützige Organisation" lautet und arg0 eine ganze Zahl mit dem Wert 10 ist, lautet der Rückgabewert "Vielen Dank für Ihre Spende von 10 Dosen Lebensmittel an unsere gemeinnützige Organisation".

Hinweise für Aufrufer

Wenn Sie das Objekt in .NET Core und in der .NET Framework 4.0 und höher instanziieren, indem Sie den StringBuilderStringBuilder(Int32, Int32) Konstruktor aufrufen, kann sowohl die Länge als auch die Kapazität der StringBuilder Instanz über den Wert ihrer MaxCapacity Eigenschaft hinausgehen. Dies kann insbesondere auftreten, wenn Sie die Append(String) Methoden und AppendFormat(String, Object) aufrufen, um kleine Zeichenfolgen anzufügen.

Siehe auch

Gilt für

AppendFormat(IFormatProvider, String, Object)

Fügt die Zeichenfolge, die durch Verarbeitung einer kombinierten Formatzeichenfolge mit 0 (null) oder mehr Formatelementen zurückgegeben wurde, an diese Instanz an. Jedes Formatelement wird durch die Zeichenfolgendarstellung eines einzigen Arguments mit einem angegebenen Formatanbieter ersetzt.

public:
 System::Text::StringBuilder ^ AppendFormat(IFormatProvider ^ provider, System::String ^ format, System::Object ^ arg0);
public System.Text.StringBuilder AppendFormat (IFormatProvider provider, string format, object arg0);
public System.Text.StringBuilder AppendFormat (IFormatProvider? provider, string format, object? arg0);
member this.AppendFormat : IFormatProvider * string * obj -> System.Text.StringBuilder
Public Function AppendFormat (provider As IFormatProvider, format As String, arg0 As Object) As StringBuilder

Parameter

provider
IFormatProvider

Ein Objekt, das kulturspezifische Formatierungsinformationen bereitstellt.

format
String

Eine kombinierte Formatzeichenfolge.

arg0
Object

Das zu formatierende Objekt.

Gibt zurück

StringBuilder

Ein Verweis auf diese Instanz, nachdem der Anfügevorgang abgeschlossen wurde. Nach dem Anfügevorgang enthält diese Instanz alle Daten, die auch vor dem Vorgang vorhanden waren. Ihnen folgt eine Kopie von format, wobei die Formatangabe durch die Zeichenfolgendarstellung von arg0 ersetzt wurde.

Ausnahmen

format ist null.

format ist ungültig.

- oder -

Der Index eines Formatelements ist kleiner als 0 (null) oder größer oder gleich 1.

Die Länge der erweiterten Zeichenfolge würde MaxCapacity überschreiten.

Beispiele

Im Folgenden finden Sie zwei Aufrufe der AppendFormat(IFormatProvider, String, Object) -Methode. Beide verwenden die Formatierungskonventionen der Kultur English-United Kingdom (en-GB). Die erste fügt die Zeichenfolgendarstellung einer Decimal Wertwährung in eine Ergebniszeichenfolge ein. Die zweite fügt einen DateTime Wert an zwei Stellen in eine Ergebniszeichenfolge ein, die erste enthält nur die kurze Datumszeichenfolge und die zweite die kurze Zeitzeichenfolge.

using System;
using System.Globalization;
using System.Text;

public class Example
{
   public static void Main()
   {
      StringBuilder sb = new StringBuilder();
      Decimal value = 16.95m;
      CultureInfo enGB = CultureInfo.CreateSpecificCulture("en-GB");
      DateTime dateToday = DateTime.Now;
      sb.AppendFormat(enGB, "Final Price: {0:C2}", value);
      sb.AppendLine();
      sb.AppendFormat(enGB, "Date and Time: {0:d} at {0:t}", dateToday);
      Console.WriteLine(sb.ToString());
   }
}
// The example displays the following output:
//       Final Price: £16.95
//       Date and Time: 01/10/2014 at 10:22
Imports System.Globalization
Imports System.Text

Module Example
   Public Sub Main()
      Dim sb As New StringBuilder()
      Dim value As Decimal = 16.95d
      Dim enGB As CultureInfo = CultureInfo.CreateSpecificCulture("en-GB")
      Dim dateToday As DateTime = Date.Now
      sb.AppendFormat(enGB, "Final Price: {0:C2}", value)
      sb.AppendLine()
      sb.AppendFormat(enGB, "Date and Time: {0:d} at {0:t}", dateToday)
      Console.WriteLine(sb.ToString())
   End Sub
End Module
' The example displays output like the following:
'       Final Price: £16.95
'       Date and Time: 01/10/2014 at 10:22

Hinweise

Diese Methode verwendet das zusammengesetzte Formatierungsfeature des .NET Framework, um den Wert von arg0 in die Textdarstellung zu konvertieren und diese Darstellung in das aktuelle StringBuilder Objekt einzubetten.

Der format Parameter besteht aus null oder mehr Textausführungen, die mit null oder mehr indizierten Platzhaltern vermischt sind, die als Formatelemente bezeichnet werden. Der Index jedes Formatelements muss null (0) sein, da diese Methode eine Argumentliste mit einem einzelnen Argument enthält. Der Formatierungsprozess ersetzt jedes Formatelement durch die Zeichenfolgendarstellung von arg0.

Die Syntax eines Formatelements lautet wie folgt:

{index[,length][:formatString]}

Elemente in eckigen Klammern sind optional. In der folgenden Tabelle wird jedes Element beschrieben.

Element BESCHREIBUNG
Index Die nullbasierte Position in der Parameterliste des zu formatierenden Objekts. Wenn das durch index angegebene Objekt ist, wird nulldas Formatelement durch String.Emptyersetzt. Da die AppendFormat(IFormatProvider, String, Object) Methode in diesem Fall ein einzelnes Argument in der Argumentliste enthält, muss der Wert von index immer 0 sein. Wenn dies nicht der Grund ist, wird ein FormatException ausgelöst.
, Länge Die Mindestanzahl von Zeichen in der Zeichenfolgendarstellung des Parameters. Bei positivem Wert ist der Parameter rechtsbündig; wenn negativ, ist es linksbündig.
:formatString Eine Standard- oder benutzerdefinierte Formatzeichenfolge, die vom -Parameter unterstützt wird.

Hinweis

Informationen zu den Standard- und benutzerdefinierten Formatzeichenfolgen, die mit Datums- und Uhrzeitwerten verwendet werden, finden Sie unter Standarddatums- und Uhrzeitformatzeichenfolgen und benutzerdefinierte Datums- und Uhrzeitformatzeichenfolgen. Informationen zu standard- und benutzerdefinierten Formatzeichenfolgen, die mit numerischen Werten verwendet werden, finden Sie unter Numerische Standardformatzeichenfolgen und benutzerdefinierte numerische Formatzeichenfolgen. Informationen zu den Standardformatzeichenfolgen, die mit Enumerationen verwendet werden, finden Sie unter Enumerationsformatzeichenfolgen.

Der provider -Parameter gibt eine IFormatProvider Implementierung an, die Formatierungsinformationen für die -Objekte in argsbereitstellen kann. provider kann eine der folgenden Formen haben:

  • Ein CultureInfo Objekt, das kulturspezifische Formatierungsinformationen bereitstellt.

  • Ein NumberFormatInfo Objekt, das kulturspezifische Formatierungsinformationen bereitstellt arg0 , wenn es sich um einen numerischen Wert handelt.

  • Ein DateTimeFormatInfo Objekt, das kulturspezifische Formatierungsinformationen bereitstellt, wenn es sich um arg0 einen Datums- und Uhrzeitwert handelt.

  • Eine benutzerdefinierte IFormatProvider Implementierung, die Formatierungsinformationen für arg0bereitstellt. In der Regel implementiert eine solche Implementierung auch die ICustomFormatter Schnittstelle.

Wenn der provider Parameter ist null, werden Formatierungsinformationen aus der aktuellen Kultur abgerufen.

arg0 stellt das zu formatierende Objekt dar. Jedes Formatelement in format wird durch die Zeichenfolgendarstellung von arg0ersetzt. Wenn das Formatelement die IFormattable Schnittstelle enthält formatString und arg0 implementiert, arg0.ToString(formatString, provider) definiert die Formatierung. arg0.ToString() Andernfalls definiert die Formatierung.

Hinweise für Aufrufer

Wenn Sie das Objekt in .NET Core und in der .NET Framework 4.0 und höher instanziieren, indem Sie den StringBuilderStringBuilder(Int32, Int32) Konstruktor aufrufen, kann sowohl die Länge als auch die Kapazität der StringBuilder Instanz über den Wert ihrer MaxCapacity Eigenschaft hinausgehen. Dies kann insbesondere auftreten, wenn Sie die Append(String) Methoden und AppendFormat(String, Object) aufrufen, um kleine Zeichenfolgen anzufügen.

Siehe auch

Gilt für

AppendFormat(IFormatProvider, String, Object[])

Fügt die Zeichenfolge, die durch Verarbeitung einer kombinierten Formatzeichenfolge mit 0 (null) oder mehr Formatelementen zurückgegeben wurde, an diese Instanz an. Jedes Formatelement wird von der Zeichenfolgendarstellung eines entsprechenden Arguments in einem Parameterarray ersetzt, das einen angegebenen Formatanbieter verwendet.

public:
 System::Text::StringBuilder ^ AppendFormat(IFormatProvider ^ provider, System::String ^ format, ... cli::array <System::Object ^> ^ args);
public System.Text.StringBuilder AppendFormat (IFormatProvider provider, string format, params object[] args);
public System.Text.StringBuilder AppendFormat (IFormatProvider? provider, string format, params object?[] args);
member this.AppendFormat : IFormatProvider * string * obj[] -> System.Text.StringBuilder
Public Function AppendFormat (provider As IFormatProvider, format As String, ParamArray args As Object()) As StringBuilder

Parameter

provider
IFormatProvider

Ein Objekt, das kulturspezifische Formatierungsinformationen bereitstellt.

format
String

Eine kombinierte Formatzeichenfolge.

args
Object[]

Ein Array zu formatierender Objekte.

Gibt zurück

StringBuilder

Ein Verweis auf diese Instanz, nachdem der Anfügevorgang abgeschlossen wurde. Nach dem Anfügevorgang enthält diese Instanz alle Daten, die auch vor dem Vorgang vorhanden waren. Ihnen folgt eine Kopie von format, wobei die Formatangabe durch die Zeichenfolgendarstellung des entsprechenden Objektarguments ersetzt wurde.

Ausnahmen

format ist null.

format ist ungültig.

- oder -

Der Index eines Formatelements ist kleiner als 0 (null) oder größer oder gleich der Länge des args-Arrays.

Die Länge der erweiterten Zeichenfolge würde MaxCapacity überschreiten.

Beispiele

Das folgende Beispiel veranschaulicht die AppendFormat Methode.

using namespace System;
using namespace System::Text;
using namespace System::Globalization;
void Show( StringBuilder^ sbs )
{
   Console::WriteLine( sbs );
   sbs->Length = 0;
}

int main()
{
   StringBuilder^ sb = gcnew StringBuilder;
   int var1 = 111;
   float var2 = 2.22F;
   String^ var3 = "abcd";
   array<Object^>^var4 = {3,4.4,(Char)'X'};
   Console::WriteLine();
   Console::WriteLine( "StringBuilder.AppendFormat method:" );
   sb->AppendFormat( "1) {0}", var1 );
   Show( sb );
   sb->AppendFormat( "2) {0}, {1}", var1, var2 );
   Show( sb );
   sb->AppendFormat( "3) {0}, {1}, {2}", var1, var2, var3 );
   Show( sb );
   sb->AppendFormat( "4) {0}, {1}, {2}", var4 );
   Show( sb );
   CultureInfo^ ci = gcnew CultureInfo( "es-ES",true );
   array<Object^>^temp1 = {var2};
   sb->AppendFormat( ci, "5) {0}", temp1 );
   Show( sb );
}

/*
This example produces the following results:

StringBuilder.AppendFormat method:
1) 111
2) 111, 2.22
3) 111, 2.22, abcd
4) 3, 4.4, X
5) 2,22
*/
using System;
using System.Text;
using System.Globalization;

class Sample
{
    static StringBuilder sb = new StringBuilder();

    public static void Main()
    {
    int    var1   = 111;
    float  var2   = 2.22F;
    string var3   = "abcd";
    object[] var4 = {3, 4.4, 'X'};

    Console.WriteLine();
    Console.WriteLine("StringBuilder.AppendFormat method:");
    sb.AppendFormat("1) {0}", var1);
    Show(sb);
    sb.AppendFormat("2) {0}, {1}", var1, var2);
    Show(sb);
    sb.AppendFormat("3) {0}, {1}, {2}", var1, var2, var3);
    Show(sb);
    sb.AppendFormat("4) {0}, {1}, {2}", var4);
    Show(sb);
    CultureInfo ci = new CultureInfo("es-ES", true);
    sb.AppendFormat(ci, "5) {0}", var2);
    Show(sb);
    }

    public static void Show(StringBuilder sbs)
    {
    Console.WriteLine(sbs.ToString());
    sb.Length = 0;
    }
}
/*
This example produces the following results:

StringBuilder.AppendFormat method:
1) 111
2) 111, 2.22
3) 111, 2.22, abcd
4) 3, 4.4, X
5) 2,22
*/
Imports System.Text
Imports System.Globalization

Class Sample
   Private Shared sb As New StringBuilder()

   Public Shared Sub Main()
      Dim var1 As Integer = 111
      Dim var2 As Single = 2.22F
      Dim var3 As String = "abcd"
      Dim var4 As Object() =  {3, 4.4, "X"c}
      
      Console.WriteLine()
      Console.WriteLine("StringBuilder.AppendFormat method:")
      sb.AppendFormat("1) {0}", var1)
      Show(sb)
      sb.AppendFormat("2) {0}, {1}", var1, var2)
      Show(sb)
      sb.AppendFormat("3) {0}, {1}, {2}", var1, var2, var3)
      Show(sb)
      sb.AppendFormat("4) {0}, {1}, {2}", var4)
      Show(sb)
      Dim ci As New CultureInfo("es-ES", True)
      sb.AppendFormat(ci, "5) {0}", var2)
      Show(sb)
   End Sub
   
   Public Shared Sub Show(sbs As StringBuilder)
      Console.WriteLine(sbs.ToString())
      sb.Length = 0
   End Sub
End Class
'
'This example produces the following results:
'
'StringBuilder.AppendFormat method:
'1) 111
'2) 111, 2.22
'3) 111, 2.22, abcd
'4) 3, 4.4, X
'5) 2,22

Im folgenden Beispiel wird eine benutzerdefinierte IFormatProvider Implementierung mit dem Namen CustomerFormatter definiert, die eine 10-stellige Kundennummer mit Bindestrichen nach der vierten und siebten Ziffer formatiert. Sie wird an die StringBuilder.AppendFormat(IFormatProvider, String, Object[]) -Methode übergeben, um eine Zeichenfolge zu erstellen, die die formatierte Kundennummer und den Kundennamen enthält.

using System;
using System.Text;

public class Customer
{
   private string custName;
   private int custNumber;
   
   public Customer(string name, int number)
   {
      this.custName = name;
      this.custNumber = number;
   }
   
   public string Name
   {
      get { return this.custName; }
   }
   
   public int CustomerNumber
   {
      get { return this.custNumber; }
   }
}

public class CustomerNumberFormatter : IFormatProvider, ICustomFormatter
{   
   public object GetFormat(Type formatType)
   {
      if (formatType == typeof(ICustomFormatter))
         return this;
      return null;
   }
   
   public string Format(string format, object arg, IFormatProvider provider)
   {
      if (arg is Int32)
      {
         string custNumber = ((int) arg).ToString("D10");
         return custNumber.Substring(0, 4) + "-" + custNumber.Substring(4, 3) + 
                "-" + custNumber.Substring(7, 3);
      }
      else
      {
         return null;
      }
   }                   
}

public class Example
{
   public static void Main()
   {
      Customer customer = new Customer("A Plus Software", 903654);
      StringBuilder sb = new StringBuilder();
      sb.AppendFormat(new CustomerNumberFormatter(), "{0}: {1}", 
                      customer.CustomerNumber, customer.Name);
      Console.WriteLine(sb.ToString());
   }
}
// The example displays the following output:
//      0000-903-654: A Plus Software
Imports System.Text

Public Class Customer
   Private custName As String
   Private custNumber As Integer
   
   Public Sub New(name As String, number As Integer)
      custName = name
      custNumber = number
   End Sub
   
   Public ReadOnly Property Name As String
      Get
         Return Me.custName
      End Get
   End Property
   
   Public ReadOnly Property CustomerNumber As Integer
      Get
         Return Me.custNumber
      End Get
   End Property
End Class

Public Class CustomerNumberFormatter 
   Implements IFormatProvider, ICustomFormatter
   
   Public Function GetFormat(formatType As Type) As Object _
                   Implements IFormatProvider.GetFormat
      If formatType Is GetType(ICustomFormatter) Then
         Return Me
      End If
      Return Nothing
   End Function
   
   Public Function Format(fmt As String, arg As Object, provider As IFormatProvider) As String _
                   Implements ICustomFormatter.Format
      If typeof arg Is Int32 Then
         Dim custNumber As String = CInt(arg).ToString("D10")
         Return custNumber.Substring(0, 4) + "-" + custNumber.SubString(4, 3) + _
                "-" + custNumber.Substring(7, 3)
      Else
         Return Nothing
      End If
   End Function                   
End Class

Module Example
   Public Sub Main()
      Dim customer As New Customer("A Plus Software", 903654)
      Dim sb As New StringBuilder()
      sb.AppendFormat(New CustomerNumberFormatter, "{0}: {1}", _
                      customer.CustomerNumber, customer.Name)
      Console.WriteLine(sb.ToString())
   End Sub
End Module
' The example displays the following output:
'      0000-903-654: A Plus Software

Hinweise

Diese Methode verwendet das zusammengesetzte Formatierungsfeature des .NET Framework, um den Wert eines Objekts in seine Textdarstellung zu konvertieren und diese Darstellung in das aktuelle StringBuilder Objekt einzubetten.

Der format Parameter besteht aus null oder mehr Textausführungen, die mit null oder mehr indizierten Platzhaltern, sogenannten Formatelementen, vermischt sind, die Objekten in der Parameterliste dieser Methode entsprechen. Der Formatierungsprozess ersetzt jedes Formatelement durch die Zeichenfolgendarstellung des entsprechenden Objekts.

Die Syntax eines Formatelements lautet wie folgt:

{index[,length][:formatString]}

Elemente in eckigen Klammern sind optional. In der folgenden Tabelle wird jedes Element beschrieben.

Element BESCHREIBUNG
Index Die nullbasierte Position in der Parameterliste des zu formatierenden Objekts. Wenn das durch index angegebene Objekt ist, wird nulldas Formatelement durch String.Emptyersetzt. Wenn in der Indexposition kein Parameter vorhanden ist, wird ein FormatException ausgelöst.
, Länge Die Mindestanzahl von Zeichen in der Zeichenfolgendarstellung des Parameters. Bei positivem Wert ist der Parameter rechtsbündig; wenn negativ, ist es linksbündig.
:formatString Eine Standard- oder benutzerdefinierte Formatzeichenfolge, die vom -Parameter unterstützt wird.

Hinweis

Informationen zu den Standard- und benutzerdefinierten Formatzeichenfolgen, die mit Datums- und Uhrzeitwerten verwendet werden, finden Sie unter Standarddatums- und Uhrzeitformatzeichenfolgen und benutzerdefinierte Datums- und Uhrzeitformatzeichenfolgen. Informationen zu standard- und benutzerdefinierten Formatzeichenfolgen, die mit numerischen Werten verwendet werden, finden Sie unter Numerische Standardformatzeichenfolgen und benutzerdefinierte numerische Formatzeichenfolgen. Informationen zu den Standardformatzeichenfolgen, die mit Enumerationen verwendet werden, finden Sie unter Enumerationsformatzeichenfolgen.

Der provider -Parameter gibt eine IFormatProvider Implementierung an, die Formatierungsinformationen für die -Objekte in argsbereitstellen kann. provider kann eine der folgenden Formen haben:

  • Ein CultureInfo Objekt, das kulturspezifische Formatierungsinformationen bereitstellt.

  • Ein NumberFormatInfo -Objekt, das kulturspezifische Formatierungsinformationen für numerische Werte in argsbereitstellt.

  • Ein DateTimeFormatInfo -Objekt, das kulturspezifische Formatierungsinformationen für Datums- und Uhrzeitwerte in argsbereitstellt.

  • Eine benutzerdefinierte IFormatProvider Implementierung, die Formatierungsinformationen für mindestens eines der Objekte in argsbereitstellt. In der Regel implementiert eine solche Implementierung auch die ICustomFormatter Schnittstelle. Das zweite Beispiel im nächsten Abschnitt veranschaulicht einen StringBuilder.AppendFormat(IFormatProvider, String, Object[]) Methodenaufruf mit einer benutzerdefinierten IFormatProvider Implementierung.

Wenn der provider Parameter ist null, werden Formatanbieterinformationen aus der aktuellen Kultur abgerufen.

args stellt die zu formatierenden Objekte dar. Jedes Formatelement in format wird durch die Zeichenfolgendarstellung des entsprechenden Objekts in argsersetzt. Wenn das Formatelement enthält formatString und das entsprechende Objekt in args die IFormattable Schnittstelle implementiert, args[index].ToString(formatString, provider) definiert die Formatierung. args[index].ToString() Andernfalls definiert die Formatierung.

Hinweise für Aufrufer

Wenn Sie das Objekt in .NET Core und in der .NET Framework 4.0 und höher instanziieren, indem Sie den StringBuilderStringBuilder(Int32, Int32) Konstruktor aufrufen, kann sowohl die Länge als auch die Kapazität der StringBuilder Instanz über den Wert ihrer MaxCapacity Eigenschaft hinausgehen. Dies kann insbesondere auftreten, wenn Sie die Append(String) Methoden und AppendFormat(String, Object) aufrufen, um kleine Zeichenfolgen anzufügen.

Siehe auch

Gilt für

AppendFormat(String, Object, Object)

Fügt die Zeichenfolge, die durch Verarbeitung einer kombinierten Formatzeichenfolge mit 0 (null) oder mehr Formatelementen zurückgegeben wurde, an diese Instanz an. Jedes Formatelement wird durch die Zeichenfolgendarstellung für eines von zwei Argumenten ersetzt.

public:
 System::Text::StringBuilder ^ AppendFormat(System::String ^ format, System::Object ^ arg0, System::Object ^ arg1);
public System.Text.StringBuilder AppendFormat (string format, object arg0, object arg1);
public System.Text.StringBuilder AppendFormat (string format, object? arg0, object? arg1);
member this.AppendFormat : string * obj * obj -> System.Text.StringBuilder
Public Function AppendFormat (format As String, arg0 As Object, arg1 As Object) As StringBuilder

Parameter

format
String

Eine kombinierte Formatzeichenfolge.

arg0
Object

Das erste zu formatierende Objekt.

arg1
Object

Das zweite zu formatierende Objekt.

Gibt zurück

StringBuilder

Ein Verweis auf diese Instanz mit angefügtem format. Jedes Formatelement in format wird durch die Zeichenfolgendarstellung des entsprechenden Objektarguments ersetzt.

Ausnahmen

format ist null.

format ist ungültig.

- oder -

Der Index eines Formatelements ist kleiner als 0 (null) oder größer gleich 2.

Die Länge der erweiterten Zeichenfolge würde MaxCapacity überschreiten.

Beispiele

Das folgende Beispiel veranschaulicht die AppendFormat Methode.

using namespace System;
using namespace System::Text;
using namespace System::Globalization;
void Show( StringBuilder^ sbs )
{
   Console::WriteLine( sbs );
   sbs->Length = 0;
}

int main()
{
   StringBuilder^ sb = gcnew StringBuilder;
   int var1 = 111;
   float var2 = 2.22F;
   String^ var3 = "abcd";
   array<Object^>^var4 = {3,4.4,(Char)'X'};
   Console::WriteLine();
   Console::WriteLine( "StringBuilder.AppendFormat method:" );
   sb->AppendFormat( "1) {0}", var1 );
   Show( sb );
   sb->AppendFormat( "2) {0}, {1}", var1, var2 );
   Show( sb );
   sb->AppendFormat( "3) {0}, {1}, {2}", var1, var2, var3 );
   Show( sb );
   sb->AppendFormat( "4) {0}, {1}, {2}", var4 );
   Show( sb );
   CultureInfo^ ci = gcnew CultureInfo( "es-ES",true );
   array<Object^>^temp1 = {var2};
   sb->AppendFormat( ci, "5) {0}", temp1 );
   Show( sb );
}

/*
This example produces the following results:

StringBuilder.AppendFormat method:
1) 111
2) 111, 2.22
3) 111, 2.22, abcd
4) 3, 4.4, X
5) 2,22
*/
using System;
using System.Text;
using System.Globalization;

class Sample
{
    static StringBuilder sb = new StringBuilder();

    public static void Main()
    {
    int    var1   = 111;
    float  var2   = 2.22F;
    string var3   = "abcd";
    object[] var4 = {3, 4.4, 'X'};

    Console.WriteLine();
    Console.WriteLine("StringBuilder.AppendFormat method:");
    sb.AppendFormat("1) {0}", var1);
    Show(sb);
    sb.AppendFormat("2) {0}, {1}", var1, var2);
    Show(sb);
    sb.AppendFormat("3) {0}, {1}, {2}", var1, var2, var3);
    Show(sb);
    sb.AppendFormat("4) {0}, {1}, {2}", var4);
    Show(sb);
    CultureInfo ci = new CultureInfo("es-ES", true);
    sb.AppendFormat(ci, "5) {0}", var2);
    Show(sb);
    }

    public static void Show(StringBuilder sbs)
    {
    Console.WriteLine(sbs.ToString());
    sb.Length = 0;
    }
}
/*
This example produces the following results:

StringBuilder.AppendFormat method:
1) 111
2) 111, 2.22
3) 111, 2.22, abcd
4) 3, 4.4, X
5) 2,22
*/
Imports System.Text
Imports System.Globalization

Class Sample
   Private Shared sb As New StringBuilder()

   Public Shared Sub Main()
      Dim var1 As Integer = 111
      Dim var2 As Single = 2.22F
      Dim var3 As String = "abcd"
      Dim var4 As Object() =  {3, 4.4, "X"c}
      
      Console.WriteLine()
      Console.WriteLine("StringBuilder.AppendFormat method:")
      sb.AppendFormat("1) {0}", var1)
      Show(sb)
      sb.AppendFormat("2) {0}, {1}", var1, var2)
      Show(sb)
      sb.AppendFormat("3) {0}, {1}, {2}", var1, var2, var3)
      Show(sb)
      sb.AppendFormat("4) {0}, {1}, {2}", var4)
      Show(sb)
      Dim ci As New CultureInfo("es-ES", True)
      sb.AppendFormat(ci, "5) {0}", var2)
      Show(sb)
   End Sub
   
   Public Shared Sub Show(sbs As StringBuilder)
      Console.WriteLine(sbs.ToString())
      sb.Length = 0
   End Sub
End Class
'
'This example produces the following results:
'
'StringBuilder.AppendFormat method:
'1) 111
'2) 111, 2.22
'3) 111, 2.22, abcd
'4) 3, 4.4, X
'5) 2,22

Hinweise

Diese Methode verwendet das zusammengesetzte Formatierungsfeature des .NET Framework, um den Wert eines Objekts in seine Textdarstellung zu konvertieren und diese Darstellung in das aktuelle StringBuilder Objekt einzubetten.

Der format Parameter besteht aus null oder mehr Textausführungen, die mit null oder mehr indizierten Platzhaltern vermischt sind, die als Formatelemente bezeichnet werden, die den arg1beiden Objekten in der Parameterliste dieser Methode entsprechenarg0. Der Formatierungsprozess ersetzt jedes Formatelement durch die Zeichenfolgendarstellung des entsprechenden Objekts.

Die Syntax eines Formatelements lautet wie folgt:

{index[,length][:formatString]}

Elemente in eckigen Klammern sind optional. In der folgenden Tabelle wird jedes Element beschrieben.

Element BESCHREIBUNG
Index Die nullbasierte Position in der Parameterliste des zu formatierenden Objekts. Wenn das durch index angegebene Objekt ist, wird nulldas Formatelement durch String.Emptyersetzt. Wenn in der Indexposition kein Parameter vorhanden ist, wird ein FormatException ausgelöst.
, Länge Die Mindestanzahl von Zeichen in der Zeichenfolgendarstellung des Parameters. Bei positivem Wert ist der Parameter rechtsbündig; wenn negativ, ist es linksbündig.
:formatString Eine Standard- oder benutzerdefinierte Formatzeichenfolge, die vom -Parameter unterstützt wird.

Hinweis

Informationen zu den Standard- und benutzerdefinierten Formatzeichenfolgen, die mit Datums- und Uhrzeitwerten verwendet werden, finden Sie unter Standarddatums- und Uhrzeitformatzeichenfolgen und benutzerdefinierte Datums- und Uhrzeitformatzeichenfolgen. Informationen zu standard- und benutzerdefinierten Formatzeichenfolgen, die mit numerischen Werten verwendet werden, finden Sie unter Numerische Standardformatzeichenfolgen und benutzerdefinierte numerische Formatzeichenfolgen. Informationen zu den Standardformatzeichenfolgen, die mit Enumerationen verwendet werden, finden Sie unter Enumerationsformatzeichenfolgen.

arg0 und arg1 stellen die zu formatierenden Objekte dar. Jedes Formatelement in format wird durch die Zeichenfolgendarstellung von oder arg0arg1ersetzt. Wenn das Formatelement enthält formatString und das entsprechende Objekt die IFormattable Schnittstelle implementiert, arg definiert x.ToString(formatString, provider) die Formatierung, wobei x der Index des Arguments ist. Andernfalls arg definiert x.ToString() die Formatierung.

Wenn die zugewiesene format Zeichenfolge "Vielen Dank für Ihre Spende von {0:#####} Dosen lebensmittel an unsere gemeinnützige Organisation" lautet und arg0 eine ganze Zahl mit dem Wert 10 ist, lautet der Rückgabewert "Vielen Dank für Ihre Spende von 10 Dosen Lebensmittel an unsere gemeinnützige Organisation".

Hinweise für Aufrufer

Wenn Sie das Objekt in .NET Core und in der .NET Framework 4.0 und höher instanziieren, indem Sie den StringBuilderStringBuilder(Int32, Int32) Konstruktor aufrufen, kann sowohl die Länge als auch die Kapazität der StringBuilder Instanz über den Wert ihrer MaxCapacity Eigenschaft hinausgehen. Dies kann insbesondere auftreten, wenn Sie die Append(String) Methoden und AppendFormat(String, Object) aufrufen, um kleine Zeichenfolgen anzufügen.

Siehe auch

Gilt für

AppendFormat(IFormatProvider, String, Object, Object)

Fügt die Zeichenfolge, die durch Verarbeitung einer kombinierten Formatzeichenfolge mit 0 (null) oder mehr Formatelementen zurückgegeben wurde, an diese Instanz an. Jedes Formatelement wird durch die Zeichenfolgendarstellung eines der zwei Argumente mit einem angegebenen Formatanbieter ersetzt.

public:
 System::Text::StringBuilder ^ AppendFormat(IFormatProvider ^ provider, System::String ^ format, System::Object ^ arg0, System::Object ^ arg1);
public System.Text.StringBuilder AppendFormat (IFormatProvider provider, string format, object arg0, object arg1);
public System.Text.StringBuilder AppendFormat (IFormatProvider? provider, string format, object? arg0, object? arg1);
member this.AppendFormat : IFormatProvider * string * obj * obj -> System.Text.StringBuilder
Public Function AppendFormat (provider As IFormatProvider, format As String, arg0 As Object, arg1 As Object) As StringBuilder

Parameter

provider
IFormatProvider

Ein Objekt, das kulturspezifische Formatierungsinformationen bereitstellt.

format
String

Eine kombinierte Formatzeichenfolge.

arg0
Object

Das erste zu formatierende Objekt.

arg1
Object

Das zweite zu formatierende Objekt.

Gibt zurück

StringBuilder

Ein Verweis auf diese Instanz, nachdem der Anfügevorgang abgeschlossen wurde. Nach dem Anfügevorgang enthält diese Instanz alle Daten, die auch vor dem Vorgang vorhanden waren. Ihnen folgt eine Kopie von format, wobei die Formatangabe durch die Zeichenfolgendarstellung des entsprechenden Objektarguments ersetzt wurde.

Ausnahmen

format ist null.

format ist ungültig.

- oder -

Der Index eines Formatelements ist kleiner als 0 (null) oder größer oder gleich 2.

Die Länge der erweiterten Zeichenfolge würde MaxCapacity überschreiten.

Beispiele

Im folgenden Beispiel wird die AppendFormat(IFormatProvider, String, Object, Object) -Methode verwendet, um Zeit- und Temperaturdaten anzuzeigen, die in einem generischen Dictionary<TKey,TValue> Objekt gespeichert sind. Beachten Sie, dass die Formatzeichenfolge über drei Formatelemente verfügt, obwohl es nur objekte gibt, die formatiert werden sollen. Dies liegt daran, dass das erste Objekt in der Liste (ein Datums- und Uhrzeitwert) von zwei Formatelementen verwendet wird: Das erste Formatelement zeigt die Uhrzeit und das zweite das Datum an.

using System;
using System.Collections.Generic;
using System.Globalization;
using System.Text;

public class Example
{
   public static void Main()
   {
      CultureInfo culture = new CultureInfo("en-US");
      StringBuilder sb = new StringBuilder();
      Dictionary<DateTime, Double> temperatureInfo = new Dictionary<DateTime, Double>(); 
      temperatureInfo.Add(new DateTime(2010, 6, 1, 14, 0, 0), 87.46);
      temperatureInfo.Add(new DateTime(2010, 12, 1, 10, 0, 0), 36.81);

      sb.AppendLine("Temperature Information:\n");
      foreach (var item in temperatureInfo)
      {
         sb.AppendFormat(culture,
                         "Temperature at {0,8:t} on {0,9:d}: {1,5:N1}°F\n",
                         item.Key, item.Value);
      }
      Console.WriteLine(sb.ToString());
   }
}
// The example displays the following output:
//       Temperature Information:
//       
//       Temperature at  2:00 PM on  6/1/2010:  87.5°F
//       Temperature at 10:00 AM on 12/1/2010:  36.8°F
Imports System.Collections.Generic
Imports System.Globalization
Imports System.Text

Module Example
   Public Sub Main()
      Dim culture As New CultureInfo("en-US")
      Dim sb As New StringBuilder()
      Dim temperatureInfo As New Dictionary(Of Date, Double) 
      temperatureInfo.Add(#6/1/2010 2:00PM#, 87.46)
      temperatureInfo.Add(#12/1/2010 10:00AM#, 36.81)
      
      sb.AppendLine("Temperature Information:").AppendLine()
      For Each item In temperatureInfo
         sb.AppendFormat(culture,
                         "Temperature at {0,8:t} on {0,9:d}: {1,5:N1}°F",
                         item.Key, item.Value).AppendLine()
      Next
      Console.WriteLine(sb.ToString())
   End Sub
End Module
' The example displays the following output:
'       Temperature Information:
'       
'       Temperature at  2:00 PM on  6/1/2010:  87.5°F
'       Temperature at 10:00 AM on 12/1/2010:  36.8°F

Hinweise

Diese Methode verwendet das zusammengesetzte Formatierungsfeature des .NET Framework, um den Wert eines Objekts in seine Textdarstellung zu konvertieren und diese Darstellung in das aktuelle StringBuilder Objekt einzubetten.

Der format Parameter besteht aus null oder mehr Textausführungen, die mit null oder mehr indizierten Platzhaltern, sogenannten Formatelementen, vermischt sind, die Objekten in der Parameterliste dieser Methode entsprechen. Der Formatierungsprozess ersetzt jedes Formatelement durch die Zeichenfolgendarstellung des entsprechenden Objekts.

Die Syntax eines Formatelements lautet wie folgt:

{index[,length][:formatString]}

Elemente in eckigen Klammern sind optional. In der folgenden Tabelle wird jedes Element beschrieben.

Element BESCHREIBUNG
Index Die nullbasierte Position in der Parameterliste des zu formatierenden Objekts. Wenn das durch index angegebene Objekt ist null, wird das Formatelement durch String.Emptyersetzt. Wenn an der Indexposition kein Parameter vorhanden ist, wird ein FormatException ausgelöst.
, länge Die Mindestanzahl von Zeichen in der Zeichenfolgendarstellung des Parameters. Wenn der Parameter positiv ist, ist er rechtsbündig ausgerichtet. wenn negativ, wird sie linksbündig ausgerichtet.
:formatString Eine standard- oder benutzerdefinierte Formatzeichenfolge, die vom -Parameter unterstützt wird.

Hinweis

Informationen zu den standard- und benutzerdefinierten Formatzeichenfolgen, die mit Datums- und Uhrzeitwerten verwendet werden, finden Sie unter Standardformatzeichenfolgen für Datum und Uhrzeit und benutzerdefinierte Formatzeichenfolgen für Datum und Uhrzeit. Informationen zu den standard- und benutzerdefinierten Formatzeichenfolgen, die mit numerischen Werten verwendet werden, finden Sie unter Standardmäßige numerische Formatzeichenfolgen und benutzerdefinierte numerische Formatzeichenfolgen. Informationen zu den Standardformatzeichenfolgen, die mit Enumerationen verwendet werden, finden Sie unter Enumerationsformatzeichenfolgen.

Der provider Parameter gibt eine IFormatProvider Implementierung an, die Formatierungsinformationen für arg0 und arg1bereitstellen kann. provider kann eine der folgenden Formen haben:

  • Ein CultureInfo -Objekt, das kulturspezifische Formatierungsinformationen bereitstellt.

  • Ein NumberFormatInfo -Objekt, das kulturspezifische Formatierungsinformationen für arg0 oder arg1 bereitstellt, wenn es sich um numerische Werte handelt.

  • Ein DateTimeFormatInfo -Objekt, das kulturspezifische Formatierungsinformationen für arg0 oder arg1 bereitstellt, wenn es sich um Datums- und Uhrzeitwerte handelt.

  • Eine benutzerdefinierte IFormatProvider Implementierung, die Formatierungsinformationen für arg0 und arg1bereitstellt. In der Regel implementiert eine solche Implementierung auch die ICustomFormatter -Schnittstelle.

Wenn der provider Parameter ist null, werden Formatanbieterinformationen aus der aktuellen Kultur abgerufen.

arg0 und arg1 stellen die zu formatierenden Objekte dar. Jedes Formatelement in format wird durch die Zeichenfolgendarstellung des Objekts ersetzt, das über den entsprechenden Index verfügt. Wenn das Formatelement enthält formatString und das entsprechende Argument die IFormattable -Schnittstelle implementiert, definiert die -Methode des ToString(formatString, provider) Arguments die Formatierung. Andernfalls definiert die -Methode des ToString() Arguments die Formatierung.

Hinweise für Aufrufer

IIn .NET Core und in der .NET Framework 4.0 und höheren Versionen kann sowohl die Länge als auch die Kapazität der StringBuilder Instanz über den Wert ihrer MaxCapacity Eigenschaft hinausgehen, wenn Sie das StringBuilder Objekt durch Aufrufen des StringBuilder(Int32, Int32) Konstruktors instanziieren. Dies kann insbesondere auftreten, wenn Sie die Append(String) Methoden und AppendFormat(String, Object) aufrufen, um kleine Zeichenfolgen anzufügen.

Siehe auch

Gilt für

AppendFormat(String, Object, Object, Object)

Fügt die Zeichenfolge, die durch Verarbeitung einer kombinierten Formatzeichenfolge mit 0 (null) oder mehr Formatelementen zurückgegeben wurde, an diese Instanz an. Jedes Formatelement wird durch die Zeichenfolgendarstellung für eines von drei Argumenten ersetzt.

public:
 System::Text::StringBuilder ^ AppendFormat(System::String ^ format, System::Object ^ arg0, System::Object ^ arg1, System::Object ^ arg2);
public System.Text.StringBuilder AppendFormat (string format, object arg0, object arg1, object arg2);
public System.Text.StringBuilder AppendFormat (string format, object? arg0, object? arg1, object? arg2);
member this.AppendFormat : string * obj * obj * obj -> System.Text.StringBuilder
Public Function AppendFormat (format As String, arg0 As Object, arg1 As Object, arg2 As Object) As StringBuilder

Parameter

format
String

Eine kombinierte Formatzeichenfolge.

arg0
Object

Das erste zu formatierende Objekt.

arg1
Object

Das zweite zu formatierende Objekt.

arg2
Object

Das dritte zu formatierende Objekt.

Gibt zurück

StringBuilder

Ein Verweis auf diese Instanz mit angefügtem format. Jedes Formatelement in format wird durch die Zeichenfolgendarstellung des entsprechenden Objektarguments ersetzt.

Ausnahmen

format ist null.

format ist ungültig.

- oder -

Der Index eines Formatelements ist kleiner als 0 (null) oder größer oder gleich 3.

Die Länge der erweiterten Zeichenfolge würde MaxCapacity überschreiten.

Beispiele

Das folgende Beispiel veranschaulicht die AppendFormat Methode.

using namespace System;
using namespace System::Text;
using namespace System::Globalization;
void Show( StringBuilder^ sbs )
{
   Console::WriteLine( sbs );
   sbs->Length = 0;
}

int main()
{
   StringBuilder^ sb = gcnew StringBuilder;
   int var1 = 111;
   float var2 = 2.22F;
   String^ var3 = "abcd";
   array<Object^>^var4 = {3,4.4,(Char)'X'};
   Console::WriteLine();
   Console::WriteLine( "StringBuilder.AppendFormat method:" );
   sb->AppendFormat( "1) {0}", var1 );
   Show( sb );
   sb->AppendFormat( "2) {0}, {1}", var1, var2 );
   Show( sb );
   sb->AppendFormat( "3) {0}, {1}, {2}", var1, var2, var3 );
   Show( sb );
   sb->AppendFormat( "4) {0}, {1}, {2}", var4 );
   Show( sb );
   CultureInfo^ ci = gcnew CultureInfo( "es-ES",true );
   array<Object^>^temp1 = {var2};
   sb->AppendFormat( ci, "5) {0}", temp1 );
   Show( sb );
}

/*
This example produces the following results:

StringBuilder.AppendFormat method:
1) 111
2) 111, 2.22
3) 111, 2.22, abcd
4) 3, 4.4, X
5) 2,22
*/
using System;
using System.Text;
using System.Globalization;

class Sample
{
    static StringBuilder sb = new StringBuilder();

    public static void Main()
    {
    int    var1   = 111;
    float  var2   = 2.22F;
    string var3   = "abcd";
    object[] var4 = {3, 4.4, 'X'};

    Console.WriteLine();
    Console.WriteLine("StringBuilder.AppendFormat method:");
    sb.AppendFormat("1) {0}", var1);
    Show(sb);
    sb.AppendFormat("2) {0}, {1}", var1, var2);
    Show(sb);
    sb.AppendFormat("3) {0}, {1}, {2}", var1, var2, var3);
    Show(sb);
    sb.AppendFormat("4) {0}, {1}, {2}", var4);
    Show(sb);
    CultureInfo ci = new CultureInfo("es-ES", true);
    sb.AppendFormat(ci, "5) {0}", var2);
    Show(sb);
    }

    public static void Show(StringBuilder sbs)
    {
    Console.WriteLine(sbs.ToString());
    sb.Length = 0;
    }
}
/*
This example produces the following results:

StringBuilder.AppendFormat method:
1) 111
2) 111, 2.22
3) 111, 2.22, abcd
4) 3, 4.4, X
5) 2,22
*/
Imports System.Text
Imports System.Globalization

Class Sample
   Private Shared sb As New StringBuilder()

   Public Shared Sub Main()
      Dim var1 As Integer = 111
      Dim var2 As Single = 2.22F
      Dim var3 As String = "abcd"
      Dim var4 As Object() =  {3, 4.4, "X"c}
      
      Console.WriteLine()
      Console.WriteLine("StringBuilder.AppendFormat method:")
      sb.AppendFormat("1) {0}", var1)
      Show(sb)
      sb.AppendFormat("2) {0}, {1}", var1, var2)
      Show(sb)
      sb.AppendFormat("3) {0}, {1}, {2}", var1, var2, var3)
      Show(sb)
      sb.AppendFormat("4) {0}, {1}, {2}", var4)
      Show(sb)
      Dim ci As New CultureInfo("es-ES", True)
      sb.AppendFormat(ci, "5) {0}", var2)
      Show(sb)
   End Sub
   
   Public Shared Sub Show(sbs As StringBuilder)
      Console.WriteLine(sbs.ToString())
      sb.Length = 0
   End Sub
End Class
'
'This example produces the following results:
'
'StringBuilder.AppendFormat method:
'1) 111
'2) 111, 2.22
'3) 111, 2.22, abcd
'4) 3, 4.4, X
'5) 2,22

Hinweise

Diese Methode verwendet die zusammengesetzte Formatierungsfunktion des .NET Framework, um den Wert eines Objekts in seine Textdarstellung zu konvertieren und diese Darstellung in das aktuelle StringBuilder Objekt einzubetten.

Der format Parameter besteht aus 0 oder mehr Textläufen, die mit null oder mehr indizierten Platzhaltern, sogenannten Formatelementen, gemischt sind, die über arg2die -Objekte in der Parameterliste dieser Methode entsprechenarg0. Der Formatierungsprozess ersetzt jedes Formatelement durch die Zeichenfolgendarstellung des entsprechenden Objekts.

Die Syntax eines Formatelements lautet wie folgt:

{index[,length][:formatString]}

Elemente in eckigen Klammern sind optional. In der folgenden Tabelle wird jedes Element beschrieben.

Element BESCHREIBUNG
Index Die nullbasierte Position in der Parameterliste des zu formatierenden Objekts. Wenn das durch index angegebene Objekt ist null, wird das Formatelement durch String.Emptyersetzt. Wenn an der Indexposition kein Parameter vorhanden ist, wird ein FormatException ausgelöst.
, länge Die Mindestanzahl von Zeichen in der Zeichenfolgendarstellung des Parameters. Wenn der Parameter positiv ist, ist er rechtsbündig ausgerichtet. wenn negativ, wird sie linksbündig ausgerichtet.
:formatString Eine standard- oder benutzerdefinierte Formatzeichenfolge, die vom -Parameter unterstützt wird.

Hinweis

Informationen zu den standard- und benutzerdefinierten Formatzeichenfolgen, die mit Datums- und Uhrzeitwerten verwendet werden, finden Sie unter Standardformatzeichenfolgen für Datum und Uhrzeit und benutzerdefinierte Formatzeichenfolgen für Datum und Uhrzeit. Informationen zu den standard- und benutzerdefinierten Formatzeichenfolgen, die mit numerischen Werten verwendet werden, finden Sie unter Standardmäßige numerische Formatzeichenfolgen und benutzerdefinierte numerische Formatzeichenfolgen. Informationen zu den Standardformatzeichenfolgen, die mit Enumerationen verwendet werden, finden Sie unter Enumerationsformatzeichenfolgen.

arg0, arg1und arg2 stellen die zu formatierenden Objekte dar. Jedes Formatelement in format wird je nach Index des Formatelements durch die Zeichenfolgendarstellung von arg0, arg1oder arg2ersetzt. Wenn das Formatelement enthält formatString und das entsprechende Objekt in args die IFormattable -Schnittstelle implementiert, arg definiert x.ToString(formatString, null) die Formatierung, wobei x der Index des Arguments ist. arg Andernfalls definiert x.ToString() die Formatierung.

Wenn die zugewiesene format Zeichenfolge "Vielen Dank für Ihre Spende von {0:###}-Dosen für unsere wohltätigkeitstätige Organisation" lautet und arg0 eine ganze Zahl mit dem Wert 10 ist, lautet der Rückgabewert "Vielen Dank für Ihre Spende von 10 Dosen Lebensmittel an unsere gemeinnützige Organisation".

Hinweise für Aufrufer

Wenn Sie in .NET Core und in der .NET Framework 4.0 und höheren Versionen das Objekt durch Aufrufen des StringBuilderStringBuilder(Int32, Int32) Konstruktors instanziieren, kann sowohl die Länge als auch die Kapazität der StringBuilder Instanz über den Wert ihrer MaxCapacity Eigenschaft hinaus wachsen. Dies kann insbesondere auftreten, wenn Sie die Append(String) Methoden und AppendFormat(String, Object) aufrufen, um kleine Zeichenfolgen anzufügen.

Siehe auch

Gilt für