StringBuilder.AppendFormat StringBuilder.AppendFormat StringBuilder.AppendFormat StringBuilder.AppendFormat Method

Definition

Anexa a esta instancia la cadena que se devuelve al procesar una cadena con formato compuesto, que contiene cero o más elementos de formato. Appends the string returned by processing a composite format string, which contains zero or more format items, to this instance. Cada elemento de formato se reemplaza con la representación de cadena de un argumento de objeto correspondiente. Each format item is replaced by the string representation of a corresponding object argument.

Overloads

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

Anexa a esta instancia la cadena que se devuelve al procesar una cadena con formato compuesto, que contiene cero o más elementos de formato. Appends the string returned by processing a composite format string, which contains zero or more format items, to this instance. Cada elemento de formato se reemplaza por la representación en forma de cadena de uno de tres argumentos. Each format item is replaced by the string representation of either of three arguments.

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

Anexa a esta instancia la cadena que se devuelve al procesar una cadena con formato compuesto, que contiene cero o más elementos de formato. Appends the string returned by processing a composite format string, which contains zero or more format items, to this instance. Cada elemento de formato se reemplaza por la representación de cadena de dos argumentos utilizando un proveedor de formato especificado. Each format item is replaced by the string representation of either of two arguments using a specified format provider.

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

Anexa a esta instancia la cadena que se devuelve al procesar una cadena con formato compuesto, que contiene cero o más elementos de formato. Appends the string returned by processing a composite format string, which contains zero or more format items, to this instance. Cada elemento de formato se reemplaza por la representación en forma de cadena de uno de dos argumentos. Each format item is replaced by the string representation of either of two arguments.

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

Anexa a esta instancia la cadena que se devuelve al procesar una cadena con formato compuesto, que contiene cero o más elementos de formato. Appends the string returned by processing a composite format string, which contains zero or more format items, to this instance. Cada elemento de formato se reemplaza por la representación de cadena de tres argumentos utilizando un proveedor de formato especificado. Each format item is replaced by the string representation of either of three arguments using a specified format provider.

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

Anexa a esta instancia la cadena que se devuelve al procesar una cadena con formato compuesto, que contiene cero o más elementos de formato. Appends the string returned by processing a composite format string, which contains zero or more format items, to this instance. Cada elemento de formato se reemplaza por la representación en forma de cadena de un único argumento utilizando un proveedor de formato especificado. Each format item is replaced by the string representation of a single argument using a specified format provider.

AppendFormat(String, Object[]) AppendFormat(String, Object[]) AppendFormat(String, Object[]) AppendFormat(String, Object[])

Anexa a esta instancia la cadena que se devuelve al procesar una cadena con formato compuesto, que contiene cero o más elementos de formato. Appends the string returned by processing a composite format string, which contains zero or more format items, to this instance. Cada elemento de formato se reemplaza por la representación de cadena del argumento correspondiente de una matriz de parámetros. Each format item is replaced by the string representation of a corresponding argument in a parameter array.

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

Anexa a esta instancia la cadena que se devuelve al procesar una cadena con formato compuesto, que contiene cero o más elementos de formato. Appends the string returned by processing a composite format string, which contains zero or more format items, to this instance. Cada elemento de formato se reemplaza por la representación en forma de cadena de un único argumento. Each format item is replaced by the string representation of a single argument.

AppendFormat(IFormatProvider, String, Object[]) AppendFormat(IFormatProvider, String, Object[]) AppendFormat(IFormatProvider, String, Object[]) AppendFormat(IFormatProvider, String, Object[])

Anexa a esta instancia la cadena que se devuelve al procesar una cadena con formato compuesto, que contiene cero o más elementos de formato. Appends the string returned by processing a composite format string, which contains zero or more format items, to this instance. Cada elemento de formato se reemplaza con la representación de cadena del argumento correspondiente de una matriz de parámetros, utilizando el proveedor de formato especificado. Each format item is replaced by the string representation of a corresponding argument in a parameter array using a specified format provider.

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

Anexa a esta instancia la cadena que se devuelve al procesar una cadena con formato compuesto, que contiene cero o más elementos de formato. Appends the string returned by processing a composite format string, which contains zero or more format items, to this instance. Cada elemento de formato se reemplaza por la representación en forma de cadena de uno de tres argumentos. Each format item is replaced by the string representation of either of three arguments.

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

Parámetros

format
String String String String

Cadena de formato compuesto. A composite format string.

arg0
Object Object Object Object

Primer objeto al que se va a dar formato. The first object to format.

arg1
Object Object Object Object

Segundo objeto al que se va a dar formato. The second object to format.

arg2
Object Object Object Object

Tercer objeto al que se va a dar formato. The third object to format.

Returns

Referencia a la instancia con format anexado. A reference to this instance with format appended. Cada elemento de formato de format se reemplaza con la representación de cadena del argumento de objeto correspondiente. Each format item in format is replaced by the string representation of the corresponding object argument.

Exceptions

format no es válido. format is invalid. O bien -or- El índice de un elemento de formato es menor que 0 (cero), o mayor o igual que 3. The index of a format item is less than 0 (zero), or greater than or equal to 3.

La longitud de la cadena expandida superaría MaxCapacity. The length of the expanded string would exceed MaxCapacity.

Examples

En el ejemplo siguiente se muestra el AppendFormat método.The following example demonstrates the AppendFormat method.

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
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 'Main
   
   Public Shared Sub Show(sbs As StringBuilder)
      Console.WriteLine(sbs.ToString())
      sb.Length = 0
   End Sub 'Show
End Class 'Sample
'
'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

Remarks

Este método usa la característica de formato compuesto de .NET Framework para convertir el valor de un objeto en su representación de texto e insertar esa representación actual StringBuilder objeto.This method uses the composite formatting feature of the .NET Framework to convert the value of an object to its text representation and embed that representation in the current StringBuilder object.

El format parámetro consta de cero o más ejecuciones de texto mezclado con cero o más marcadores de posición indizados, denominados elementos de formato, que corresponden a arg0 a través de arg2, los objetos en la lista de parámetros de este método.The format parameter consists of zero or more runs of text intermixed with zero or more indexed placeholders, called format items, that correspond to arg0 through arg2, the objects in the parameter list of this method. El proceso de formato reemplaza cada elemento de formato con la representación de cadena del objeto correspondiente.The formatting process replaces each format item with the string representation of the corresponding object.

La sintaxis de un elemento de formato es como sigue:The syntax of a format item is as follows:

{índice[,longitud] [:formatString]}{index[,length][:formatString]}

Los elementos entre corchetes son opcionales.Elements in square brackets are optional. En esta tabla se describe cada elemento.The following table describes each element.

ElementoElement DescripciónDescription
indexindex La posición de base cero en la lista de parámetros del objeto para dar formato.The zero-based position in the parameter list of the object to be formatted. Si el objeto especificado por índice es null, el elemento de formato se reemplaza por String.Empty.If the object specified by index is null, the format item is replaced by String.Empty. Si no hay ningún parámetro en el índice posición, un FormatException se produce.If there is no parameter in the index position, a FormatException is thrown.
,longitud,length El número mínimo de caracteres en la representación de cadena del parámetro.The minimum number of characters in the string representation of the parameter. Si es positivo, el parámetro está alineado a la derecha; Si es negativo, está alineado a izquierda.If positive, the parameter is right-aligned; if negative, it is left-aligned.
:formatString:formatString Una cadena de formato estándar o personalizado que sea compatible con el parámetro.A standard or custom format string that is supported by the parameter.

Nota

Para las cadenas de formato estándar y personalizado utilizadas con valores de fecha y hora, vea Standard Date and Time Format Strings y Custom Date and Time Format Strings.For the standard and custom format strings used with date and time values, see Standard Date and Time Format Strings and Custom Date and Time Format Strings. Para las cadenas de formato estándar y personalizadas utilizadas con valores numéricos, vea cadenas de formato numérico estándar y Custom Numeric Format Strings.For the standard and custom format strings used with numeric values, see Standard Numeric Format Strings and Custom Numeric Format Strings. Para las cadenas de formato estándar puede usar con las enumeraciones, vea Enumeration Format Strings.For the standard format strings used with enumerations, see Enumeration Format Strings.

arg0, arg1, y arg2 representan los objetos que se va a dar formato.arg0, arg1, and arg2 represent the objects to be formatted. Cada elemento de formato de format se reemplaza por la representación de cadena arg0, arg1, o arg2, según el índice del elemento de formato.Each format item in format is replaced with the string representation of either arg0, arg1, or arg2, depending on the index of the format item. Si el elemento de formato incluye formatString y el objeto correspondiente en args implementa el IFormattable interfaz, a continuación, arg x .ToString(formatString, null) define el formato, donde x es el índice del argumento.If the format item includes formatString and the corresponding object in args implements the IFormattable interface, then argx.ToString(formatString, null) defines the formatting, where x is the index of the argument. En caso contrario, arg x .ToString() define el formato.Otherwise, argx.ToString() defines the formatting.

Si la cadena asignada a format es "agradecimiento por su donación de {0: ###} latas de comida a nuestra organización benéfica."If the string assigned to format is "Thank you for your donation of {0:####} cans of food to our charitable organization." y arg0 es un entero con el valor 10, el valor devuelto será "Gracias por su donación de 10 latas de comida a nuestra organización benéfica."and arg0 is an integer with the value 10, the return value will be "Thank you for your donation of 10 cans of food to our charitable organization."

Notes to Callers

En .NET Core y en el .NET Framework 4.0 y versiones posteriores, al crear instancias de la StringBuilder objeto mediante una llamada a la StringBuilder(Int32, Int32) constructor, la longitud y la capacidad de la StringBuilder instancia puede crecer más allá del valor de su MaxCapacity propiedad. In .NET Core and in the .NET Framework 4.0 and later versions, when you instantiate the StringBuilder object by calling the StringBuilder(Int32, Int32) constructor, both the length and the capacity of the StringBuilder instance can grow beyond the value of its MaxCapacity property. Esto puede ocurrir especialmente cuando se llama a la Append(String) y AppendFormat(String, Object) métodos para anexar cadenas pequeñas. This can occur particularly when you call the Append(String) and AppendFormat(String, Object) methods to append small strings.

See Also

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

Anexa a esta instancia la cadena que se devuelve al procesar una cadena con formato compuesto, que contiene cero o más elementos de formato. Appends the string returned by processing a composite format string, which contains zero or more format items, to this instance. Cada elemento de formato se reemplaza por la representación de cadena de dos argumentos utilizando un proveedor de formato especificado. Each format item is replaced by the string representation of either of two arguments using a specified format provider.

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

Parámetros

provider
IFormatProvider IFormatProvider IFormatProvider IFormatProvider

Objeto que proporciona información de formato específica de la referencia cultural. An object that supplies culture-specific formatting information.

format
String String String String

Cadena de formato compuesto. A composite format string.

arg0
Object Object Object Object

Primer objeto al que se va a dar formato. The first object to format.

arg1
Object Object Object Object

Segundo objeto al que se va a dar formato. The second object to format.

Returns

Referencia a esta instancia después de que se complete la operación de anexado. A reference to this instance after the append operation has completed. Después de la operación de anexado, esta instancia contiene todos los datos que existían antes de la operación, seguidos de una copia de format como sufijo, en la que cualquier especificación de formato se reemplaza con la representación en forma de cadena del argumento de objeto correspondiente. After the append operation, this instance contains any data that existed before the operation, suffixed by a copy of format where any format specification is replaced by the string representation of the corresponding object argument.

Exceptions

format no es válido. format is invalid. O bien -or- El índice de un elemento de formato es menor que 0 (cero), o mayor o igual que 2 (dos). The index of a format item is less than 0 (zero), or greater than or equal to 2 (two).

La longitud de la cadena expandida superaría MaxCapacity. The length of the expanded string would exceed MaxCapacity.

Examples

En el ejemplo siguiente se usa el AppendFormat(IFormatProvider, String, Object, Object) método para mostrar la temperatura y la hora de los datos almacenados en un tipo genérico Dictionary<TKey,TValue> objeto.The following example uses the AppendFormat(IFormatProvider, String, Object, Object) method to display time and temperature data stored in a generic Dictionary<TKey,TValue> object. Tenga en cuenta que la cadena de formato tiene tres elementos de formato, aunque existen sólo para objetos que se va a dar formato.Note that the format string has three format items, although there are only to objects to format. Esto es porque el primer objeto en la lista (un valor de fecha y hora) se utiliza por dos elementos de formato: el primer formato elemento se muestra la hora y el segundo muestra la fecha.This is because the first object in the list (a date and time value) is used by two format items: The first format item displays the time, and the second displays the date.

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

Remarks

Este método usa la característica de formato compuesto de .NET Framework para convertir el valor de un objeto en su representación de texto e insertar esa representación actual StringBuilder objeto.This method uses the composite formatting feature of the .NET Framework to convert the value of an object to its text representation and embed that representation in the current StringBuilder object.

El format parámetro consta de cero o más ejecuciones de texto mezclado con cero o más marcadores de posición indizados, denominados elementos de formato, que corresponden a objetos de la lista de parámetros de este método.The format parameter consists of zero or more runs of text intermixed with zero or more indexed placeholders, called format items, that correspond to objects in the parameter list of this method. El proceso de formato reemplaza cada elemento de formato con la representación de cadena del objeto correspondiente.The formatting process replaces each format item with the string representation of the corresponding object.

La sintaxis de un elemento de formato es como sigue:The syntax of a format item is as follows:

{índice[,longitud] [:formatString]}{index[,length][:formatString]}

Los elementos entre corchetes son opcionales.Elements in square brackets are optional. En esta tabla se describe cada elemento.The following table describes each element.

ElementoElement DescripciónDescription
indexindex La posición de base cero en la lista de parámetros del objeto para dar formato.The zero-based position in the parameter list of the object to be formatted. Si el objeto especificado por índice es null, el elemento de formato se reemplaza por String.Empty.If the object specified by index is null, the format item is replaced by String.Empty. Si no hay ningún parámetro en el índice posición, un FormatException se produce.If there is no parameter in the index position, a FormatException is thrown.
,longitud,length El número mínimo de caracteres en la representación de cadena del parámetro.The minimum number of characters in the string representation of the parameter. Si es positivo, el parámetro está alineado a la derecha; Si es negativo, está alineado a izquierda.If positive, the parameter is right-aligned; if negative, it is left-aligned.
:formatString:formatString Una cadena de formato estándar o personalizado que sea compatible con el parámetro.A standard or custom format string that is supported by the parameter.

Nota

Para las cadenas de formato estándar y personalizado utilizadas con valores de fecha y hora, vea Standard Date and Time Format Strings y Custom Date and Time Format Strings.For the standard and custom format strings used with date and time values, see Standard Date and Time Format Strings and Custom Date and Time Format Strings. Para las cadenas de formato estándar y personalizadas utilizadas con valores numéricos, vea cadenas de formato numérico estándar y Custom Numeric Format Strings.For the standard and custom format strings used with numeric values, see Standard Numeric Format Strings and Custom Numeric Format Strings. Para las cadenas de formato estándar puede usar con las enumeraciones, vea Enumeration Format Strings.For the standard format strings used with enumerations, see Enumeration Format Strings.

El provider parámetro especifica un IFormatProvider implementación que puede proporcionar información de formato de arg0 y arg1.The provider parameter specifies an IFormatProvider implementation that can provide formatting information for arg0 and arg1. provider puede ser de cualquiera de las funciones siguientes:provider can be any of the following:

  • Un CultureInfo objeto que proporciona información de formato específica de la referencia cultural.A CultureInfo object that provides culture-specific formatting information.

  • Un NumberFormatInfo objeto que proporciona información de formato específica de la referencia cultural arg0 o arg1 si son valores numéricos.A NumberFormatInfo object that provides culture-specific formatting information for arg0 or arg1 if they are numeric values.

  • Un DateTimeFormatInfo objeto que proporciona información de formato específica de la referencia cultural arg0 o arg1 si son valores de fecha y hora.A DateTimeFormatInfo object that provides culture-specific formatting information for arg0 or arg1 if they are date and time values.

  • Personalizada IFormatProvider implementación que proporciona información de formato de arg0 y arg1.A custom IFormatProvider implementation that provides formatting information for arg0 and arg1. Normalmente, este tipo de implementación también implementa el ICustomFormatter interfaz.Typically, such an implementation also implements the ICustomFormatter interface.

Si el provider parámetro es null, se obtiene información del proveedor de formato de la referencia cultural actual.If the provider parameter is null, format provider information is obtained from the current culture.

arg0 y arg1 representan los objetos que se va a dar formato.arg0 and arg1 represent the objects to be formatted. Cada elemento de formato de format se reemplaza por la representación de cadena del objeto que tiene el índice correspondiente.Each format item in format is replaced with the string representation of the object that has the corresponding index. Si el elemento de formato incluye formatString y el argumento correspondiente implementa la IFormattable interfaz y, a continuación, el argumento ToString(formatString, provider) método define el formato.If the format item includes formatString and the corresponding argument implements the IFormattable interface, then the argument's ToString(formatString, provider) method defines the formatting. En caso contrario, el argumento ToString() método define el formato.Otherwise, the argument's ToString() method defines the formatting.

Notes to Callers

En .NET Core y en el .NET Framework 4.0 y versiones posteriores, al crear instancias de la StringBuilder objeto mediante una llamada a la StringBuilder(Int32, Int32) constructor, la longitud y la capacidad de la StringBuilder instancia puede crecer más allá del valor de su MaxCapacity propiedad. IIn .NET Core and in the .NET Framework 4.0 and later versions, when you instantiate the StringBuilder object by calling the StringBuilder(Int32, Int32) constructor, both the length and the capacity of the StringBuilder instance can grow beyond the value of its MaxCapacity property. Esto puede ocurrir especialmente cuando se llama a la Append(String) y AppendFormat(String, Object) métodos para anexar cadenas pequeñas. This can occur particularly when you call the Append(String) and AppendFormat(String, Object) methods to append small strings.

See Also

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

Anexa a esta instancia la cadena que se devuelve al procesar una cadena con formato compuesto, que contiene cero o más elementos de formato. Appends the string returned by processing a composite format string, which contains zero or more format items, to this instance. Cada elemento de formato se reemplaza por la representación en forma de cadena de uno de dos argumentos. Each format item is replaced by the string representation of either of two arguments.

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);
member this.AppendFormat : string * obj * obj -> System.Text.StringBuilder
Public Function AppendFormat (format As String, arg0 As Object, arg1 As Object) As StringBuilder

Parámetros

format
String String String String

Cadena de formato compuesto. A composite format string.

arg0
Object Object Object Object

Primer objeto al que se va a dar formato. The first object to format.

arg1
Object Object Object Object

Segundo objeto al que se va a dar formato. The second object to format.

Returns

Referencia a la instancia con format anexado. A reference to this instance with format appended. Cada elemento de formato de format se reemplaza con la representación de cadena del argumento de objeto correspondiente. Each format item in format is replaced by the string representation of the corresponding object argument.

Exceptions

format no es válido. format is invalid. O bien -or- El índice de un elemento de formato es menor que 0 (cero), o mayor o igual que 2. The index of a format item is less than 0 (zero), or greater than or equal to 2.

La longitud de la cadena expandida superaría MaxCapacity. The length of the expanded string would exceed MaxCapacity.

Examples

En el ejemplo siguiente se muestra el AppendFormat método.The following example demonstrates the AppendFormat method.

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
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 'Main
   
   Public Shared Sub Show(sbs As StringBuilder)
      Console.WriteLine(sbs.ToString())
      sb.Length = 0
   End Sub 'Show
End Class 'Sample
'
'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

Remarks

Este método usa la característica de formato compuesto de .NET Framework para convertir el valor de un objeto en su representación de texto e insertar esa representación actual StringBuilder objeto.This method uses the composite formatting feature of the .NET Framework to convert the value of an object to its text representation and embed that representation in the current StringBuilder object.

El format parámetro consta de cero o más ejecuciones de texto mezclado con cero o más marcadores de posición indizados, denominados elementos de formato, que corresponden a arg0 y arg1, los dos objetos en la lista de parámetros de este método.The format parameter consists of zero or more runs of text intermixed with zero or more indexed placeholders, called format items, that correspond to arg0 and arg1, the two objects in the parameter list of this method. El proceso de formato reemplaza cada elemento de formato con la representación de cadena del objeto correspondiente.The formatting process replaces each format item with the string representation of the corresponding object.

La sintaxis de un elemento de formato es como sigue:The syntax of a format item is as follows:

{índice[,longitud] [:formatString]}{index[,length][:formatString]}

Los elementos entre corchetes son opcionales.Elements in square brackets are optional. En esta tabla se describe cada elemento.The following table describes each element.

ElementoElement DescripciónDescription
indexindex La posición de base cero en la lista de parámetros del objeto para dar formato.The zero-based position in the parameter list of the object to be formatted. Si el objeto especificado por índice es null, el elemento de formato se reemplaza por String.Empty.If the object specified by index is null, the format item is replaced by String.Empty. Si no hay ningún parámetro en el índice posición, un FormatException se produce.If there is no parameter in the index position, a FormatException is thrown.
,longitud,length El número mínimo de caracteres en la representación de cadena del parámetro.The minimum number of characters in the string representation of the parameter. Si es positivo, el parámetro está alineado a la derecha; Si es negativo, está alineado a izquierda.If positive, the parameter is right-aligned; if negative, it is left-aligned.
:formatString:formatString Una cadena de formato estándar o personalizado que sea compatible con el parámetro.A standard or custom format string that is supported by the parameter.

Nota

Para las cadenas de formato estándar y personalizado utilizadas con valores de fecha y hora, vea Standard Date and Time Format Strings y Custom Date and Time Format Strings.For the standard and custom format strings used with date and time values, see Standard Date and Time Format Strings and Custom Date and Time Format Strings. Para las cadenas de formato estándar y personalizadas utilizadas con valores numéricos, vea cadenas de formato numérico estándar y Custom Numeric Format Strings.For the standard and custom format strings used with numeric values, see Standard Numeric Format Strings and Custom Numeric Format Strings. Para las cadenas de formato estándar puede usar con las enumeraciones, vea Enumeration Format Strings.For the standard format strings used with enumerations, see Enumeration Format Strings.

arg0 y arg1 representan los objetos que se va a dar formato.arg0 and arg1 represent the objects to be formatted. Cada elemento de formato de format se reemplaza por la representación de cadena arg0 o arg1.Each format item in format is replaced with the string representation of either arg0 or arg1. Si el elemento de formato incluye formatString e implementa el objeto correspondiente del IFormattable interfaz, a continuación, arg x .ToString(formatString, provider) define el formato, donde x es el índice del argumento.If the format item includes formatString and the corresponding object implements the IFormattable interface, then argx.ToString(formatString, provider) defines the formatting, where x is the index of the argument. En caso contrario, arg x .ToString() define el formato.Otherwise, argx.ToString() defines the formatting.

Si la cadena asignada a format es "agradecimiento por su donación de {0: ###} latas de comida a nuestra organización benéfica."If the string assigned to format is "Thank you for your donation of {0:####} cans of food to our charitable organization." y arg0 es un entero con el valor 10, el valor devuelto será "Gracias por su donación de 10 latas de comida a nuestra organización benéfica."and arg0 is an integer with the value 10, the return value will be "Thank you for your donation of 10 cans of food to our charitable organization."

Notes to Callers

En .NET Core y en el .NET Framework 4.0 y versiones posteriores, al crear instancias de la StringBuilder objeto mediante una llamada a la StringBuilder(Int32, Int32) constructor, la longitud y la capacidad de la StringBuilder instancia puede crecer más allá del valor de su MaxCapacity propiedad. In .NET Core and in the .NET Framework 4.0 and later versions, when you instantiate the StringBuilder object by calling the StringBuilder(Int32, Int32) constructor, both the length and the capacity of the StringBuilder instance can grow beyond the value of its MaxCapacity property. Esto puede ocurrir especialmente cuando se llama a la Append(String) y AppendFormat(String, Object) métodos para anexar cadenas pequeñas. This can occur particularly when you call the Append(String) and AppendFormat(String, Object) methods to append small strings.

See Also

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

Anexa a esta instancia la cadena que se devuelve al procesar una cadena con formato compuesto, que contiene cero o más elementos de formato. Appends the string returned by processing a composite format string, which contains zero or more format items, to this instance. Cada elemento de formato se reemplaza por la representación de cadena de tres argumentos utilizando un proveedor de formato especificado. Each format item is replaced by the string representation of either of three arguments using a specified format provider.

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

Parámetros

provider
IFormatProvider IFormatProvider IFormatProvider IFormatProvider

Objeto que proporciona información de formato específica de la referencia cultural. An object that supplies culture-specific formatting information.

format
String String String String

Cadena de formato compuesto. A composite format string.

arg0
Object Object Object Object

Primer objeto al que se va a dar formato. The first object to format.

arg1
Object Object Object Object

Segundo objeto al que se va a dar formato. The second object to format.

arg2
Object Object Object Object

Tercer objeto al que se va a dar formato. The third object to format.

Returns

Referencia a esta instancia después de que se complete la operación de anexado. A reference to this instance after the append operation has completed. Después de la operación de anexado, esta instancia contiene todos los datos que existían antes de la operación, seguidos de una copia de format como sufijo, en la que cualquier especificación de formato se reemplaza con la representación en forma de cadena del argumento de objeto correspondiente. After the append operation, this instance contains any data that existed before the operation, suffixed by a copy of format where any format specification is replaced by the string representation of the corresponding object argument.

Exceptions

format no es válido. format is invalid. O bien -or- El índice de un elemento de formato es menor que 0 (cero), o mayor o igual que 3 (tres). The index of a format item is less than 0 (zero), or greater than or equal to 3 (three).

La longitud de la cadena expandida superaría MaxCapacity. The length of the expanded string would exceed MaxCapacity.

Examples

En el ejemplo siguiente se usa el AppendFormat(IFormatProvider, String, Object, Object, Object) método para mostrar el resultado de un valor booleano And operación con valores enteros.The following example uses the AppendFormat(IFormatProvider, String, Object, Object, Object) method to illustrate the result of a Boolean And operation with integer values. Tenga en cuenta que la cadena de formato incluye seis elementos de formato, pero el método tiene solo tres elementos en su lista de argumentos, porque cada elemento es un formato de dos maneras diferentes.Note that the format string includes six format items, but the method has only three items in its argument list, because each item is formatted in two different ways.

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)

Remarks

Este método usa la característica de formato compuesto de .NET Framework para convertir el valor de un objeto en su representación de texto e insertar esa representación actual StringBuilder objeto.This method uses the composite formatting feature of the .NET Framework to convert the value of an object to its text representation and embed that representation in the current StringBuilder object.

El format parámetro consta de cero o más ejecuciones de texto mezclado con cero o más marcadores de posición indizados, denominados elementos de formato, que corresponden a objetos de la lista de parámetros de este método.The format parameter consists of zero or more runs of text intermixed with zero or more indexed placeholders, called format items, that correspond to objects in the parameter list of this method. El proceso de formato reemplaza cada elemento de formato con la representación de cadena del objeto correspondiente.The formatting process replaces each format item with the string representation of the corresponding object.

La sintaxis de un elemento de formato es como sigue:The syntax of a format item is as follows:

{índice[,longitud] [:formatString]}{index[,length][:formatString]}

Los elementos entre corchetes son opcionales.Elements in square brackets are optional. En esta tabla se describe cada elemento.The following table describes each element.

ElementoElement DescripciónDescription
indexindex La posición de base cero en la lista de parámetros del objeto para dar formato.The zero-based position in the parameter list of the object to be formatted. Si el objeto especificado por índice es null, el elemento de formato se reemplaza por String.Empty.If the object specified by index is null, the format item is replaced by String.Empty. Si no hay ningún parámetro en el índice posición, un FormatException se produce.If there is no parameter in the index position, a FormatException is thrown.
,longitud,length El número mínimo de caracteres en la representación de cadena del parámetro.The minimum number of characters in the string representation of the parameter. Si es positivo, el parámetro está alineado a la derecha; Si es negativo, está alineado a izquierda.If positive, the parameter is right-aligned; if negative, it is left-aligned.
:formatString:formatString Una cadena de formato estándar o personalizado que sea compatible con el parámetro.A standard or custom format string that is supported by the parameter.

Nota

Para las cadenas de formato estándar y personalizado utilizadas con valores de fecha y hora, vea Standard Date and Time Format Strings y Custom Date and Time Format Strings.For the standard and custom format strings used with date and time values, see Standard Date and Time Format Strings and Custom Date and Time Format Strings. Para las cadenas de formato estándar y personalizadas utilizadas con valores numéricos, vea cadenas de formato numérico estándar y Custom Numeric Format Strings.For the standard and custom format strings used with numeric values, see Standard Numeric Format Strings and Custom Numeric Format Strings. Para las cadenas de formato estándar puede usar con las enumeraciones, vea Enumeration Format Strings.For the standard format strings used with enumerations, see Enumeration Format Strings.

El provider parámetro especifica un IFormatProvider implementación que puede proporcionar información de formato de arg0 y arg1.The provider parameter specifies an IFormatProvider implementation that can provide formatting information for arg0 and arg1. provider puede ser de cualquiera de las funciones siguientes:provider can be any of the following:

  • Un CultureInfo objeto que proporciona información de formato específica de la referencia cultural.A CultureInfo object that provides culture-specific formatting information.

  • Un NumberFormatInfo objeto que proporciona información de formato específica de la referencia cultural arg0 o arg1 si son valores numéricos.A NumberFormatInfo object that provides culture-specific formatting information for arg0 or arg1 if they are numeric values.

  • Un DateTimeFormatInfo objeto que proporciona información de formato específica de la referencia cultural arg0, arg1, o arg2 si son valores de fecha y hora.A DateTimeFormatInfo object that provides culture-specific formatting information for arg0, arg1, or arg2 if they are date and time values.

  • Personalizada IFormatProvider implementación que proporciona información de formato de arg0, arg1, y arg2.A custom IFormatProvider implementation that provides formatting information for arg0, arg1, and arg2. Normalmente, este tipo de implementación también implementa el ICustomFormatter interfaz.Typically, such an implementation also implements the ICustomFormatter interface.

Si el provider parámetro es null, se obtiene información del proveedor de formato de la referencia cultural actual.If the provider parameter is null, format provider information is obtained from the current culture.

arg0, arg1, y arg2 representan los objetos que se va a dar formato.arg0, arg1, and arg2 represent the objects to be formatted. Cada elemento de formato de format se reemplaza por la representación de cadena del objeto que tiene el índice correspondiente.Each format item in format is replaced with the string representation of the object that has the corresponding index. Si el elemento de formato incluye formatString y el argumento correspondiente implementa la IFormattable interfaz y, a continuación, el argumento ToString(formatString, provider) método define el formato.If the format item includes formatString and the corresponding argument implements the IFormattable interface, then the argument's ToString(formatString, provider) method defines the formatting. En caso contrario, el argumento ToString() método define el formato.Otherwise, the argument's ToString() method defines the formatting.

Notes to Callers

En .NET Core y en el .NET Framework 4.0 y versiones posteriores, al crear instancias de la StringBuilder objeto mediante una llamada a la StringBuilder(Int32, Int32) constructor, la longitud y la capacidad de la StringBuilder instancia puede crecer más allá del valor de su MaxCapacity propiedad. In .NET Core and in the .NET Framework 4.0 and later versions, when you instantiate the StringBuilder object by calling the StringBuilder(Int32, Int32) constructor, both the length and the capacity of the StringBuilder instance can grow beyond the value of its MaxCapacity property. Esto puede ocurrir especialmente cuando se llama a la Append(String) y AppendFormat(String, Object) métodos para anexar cadenas pequeñas. This can occur particularly when you call the Append(String) and AppendFormat(String, Object) methods to append small strings.

See Also

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

Anexa a esta instancia la cadena que se devuelve al procesar una cadena con formato compuesto, que contiene cero o más elementos de formato. Appends the string returned by processing a composite format string, which contains zero or more format items, to this instance. Cada elemento de formato se reemplaza por la representación en forma de cadena de un único argumento utilizando un proveedor de formato especificado. Each format item is replaced by the string representation of a single argument using a specified format provider.

public:
 System::Text::StringBuilder ^ AppendFormat(IFormatProvider ^ provider, System::String ^ format, System::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

Parámetros

provider
IFormatProvider IFormatProvider IFormatProvider IFormatProvider

Objeto que proporciona información de formato específica de la referencia cultural. An object that supplies culture-specific formatting information.

format
String String String String

Cadena de formato compuesto. A composite format string.

arg0
Object Object Object Object

Objeto al que se va a aplicar formato. The object to format.

Returns

Referencia a esta instancia después de que se complete la operación de anexado. A reference to this instance after the append operation has completed. Después de la operación de anexado, esta instancia contiene todos los datos que existían antes de la operación, seguidos de una copia de format como sufijo, en la que cualquier especificación de formato se reemplaza con la representación en forma de cadena de arg0. After the append operation, this instance contains any data that existed before the operation, suffixed by a copy of format in which any format specification is replaced by the string representation of arg0.

Exceptions

format no es válido. format is invalid. O bien -or- El índice de un elemento de formato es menor que 0 (cero), o mayor o igual que uno (1). The index of a format item is less than 0 (zero), or greater than or equal to one (1).

La longitud de la cadena expandida superaría MaxCapacity. The length of the expanded string would exceed MaxCapacity.

Examples

La siguiente incluye dos llamadas a la AppendFormat(IFormatProvider, String, Object) método.The following includes two calls to the AppendFormat(IFormatProvider, String, Object) method. Ambos utilizan las convenciones de formato de la referencia cultural de inglés-Reino Unido (en GB).Both use the formatting conventions of the English-Great Britain (en-GB) culture. El primero inserta la representación de cadena de un Decimal valor de moneda en una cadena de resultado.The first inserts the string representation of a Decimal value currency in a result string. El segundo inserta un DateTime valor en dos lugares de un resultado de la cadena, la primera, incluidos solo corto de fecha cadena y el segundo la cadena de hora corta.The second inserts a DateTime value in two places in a result string, the first including only the short date string and the second the short time string.

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

Remarks

Este método usa la característica de formato compuesto de .NET Framework para convertir el valor de arg0 en su representación de texto e insertar esa representación actual StringBuilder objeto.This method uses the composite formatting feature of the .NET Framework to convert the value of arg0 to its text representation and embed that representation in the current StringBuilder object.

El format parámetro consta de cero o más ejecuciones de texto mezclado con cero o más marcadores de posición indizados, denominados elementos de formato.The format parameter consists of zero or more runs of text intermixed with zero or more indexed placeholders, called format items. El índice de cada elemento de formato debe ser cero (0), ya que este método incluye una lista de argumentos con un único argumento.The index of each format item must be zero (0) since this method includes an argument list with a single argument. El proceso de formato reemplaza cada elemento de formato con la representación de cadena de arg0.The formatting process replaces each format item with the string representation of arg0.

La sintaxis de un elemento de formato es como sigue:The syntax of a format item is as follows:

{índice[,longitud] [:formatString]}{index[,length][:formatString]}

Los elementos entre corchetes son opcionales.Elements in square brackets are optional. En esta tabla se describe cada elemento.The following table describes each element.

ElementoElement DescripciónDescription
indexindex La posición de base cero en la lista de parámetros del objeto para dar formato.The zero-based position in the parameter list of the object to be formatted. Si el objeto especificado por índice es null, el elemento de formato se reemplaza por String.Empty.If the object specified by index is null, the format item is replaced by String.Empty. En este caso, puesto que la AppendFormat(IFormatProvider, String, Object) el método tiene un único argumento en la lista de argumentos, el valor de índice siempre debe ser 0.In this case, since the AppendFormat(IFormatProvider, String, Object) method has a single argument in the argument list, the value of index must always be 0. Si no, es un FormatException se produce.If it is not, a FormatException is thrown.
,longitud,length El número mínimo de caracteres en la representación de cadena del parámetro.The minimum number of characters in the string representation of the parameter. Si es positivo, el parámetro está alineado a la derecha; Si es negativo, está alineado a izquierda.If positive, the parameter is right-aligned; if negative, it is left-aligned.
:formatString:formatString Una cadena de formato estándar o personalizado que sea compatible con el parámetro.A standard or custom format string that is supported by the parameter.

Nota

Para las cadenas de formato estándar y personalizado utilizadas con valores de fecha y hora, vea Standard Date and Time Format Strings y Custom Date and Time Format Strings.For the standard and custom format strings used with date and time values, see Standard Date and Time Format Strings and Custom Date and Time Format Strings. Para las cadenas de formato estándar y personalizadas utilizadas con valores numéricos, vea cadenas de formato numérico estándar y Custom Numeric Format Strings.For the standard and custom format strings used with numeric values, see Standard Numeric Format Strings and Custom Numeric Format Strings. Para las cadenas de formato estándar puede usar con las enumeraciones, vea Enumeration Format Strings.For the standard format strings used with enumerations, see Enumeration Format Strings.

El provider parámetro especifica un IFormatProvider implementación que puede proporcionar información de formato para los objetos en args.The provider parameter specifies an IFormatProvider implementation that can provide formatting information for the objects in args. provider puede ser de cualquiera de las funciones siguientes:provider can be any of the following:

  • Un CultureInfo objeto que proporciona información de formato específica de la referencia cultural.A CultureInfo object that provides culture-specific formatting information.

  • Un NumberFormatInfo objeto que proporciona información de formato específica de la referencia cultural arg0 si es un valor numérico.A NumberFormatInfo object that provides culture-specific formatting information for arg0 if it is a numeric value.

  • Un DateTimeFormatInfo objeto que proporciona información de formato específica de la referencia cultural arg0 si es un valor de fecha y hora.A DateTimeFormatInfo object that provides culture-specific formatting information for arg0 if it is a date and time value.

  • Personalizada IFormatProvider implementación que proporciona información de formato para arg0.A custom IFormatProvider implementation that provides formatting information for arg0. Normalmente, este tipo de implementación también implementa el ICustomFormatter interfaz.Typically, such an implementation also implements the ICustomFormatter interface.

Si el provider parámetro es null, el formato se obtiene información de la referencia cultural actual.If the provider parameter is null, formatting information is obtained from the current culture.

arg0 representa el objeto que se va a dar formato.arg0 represents the object to be formatted. Cada elemento de formato de format se reemplaza por la representación de cadena de arg0.Each format item in format is replaced with the string representation of arg0. Si el elemento de formato incluye formatString y arg0 implementa el IFormattable interfaz, a continuación, arg0.ToString(formatString, provider) define el formato.If the format item includes formatString and arg0 implements the IFormattable interface, then arg0.ToString(formatString, provider) defines the formatting. En caso contrario, arg0.ToString() define el formato.Otherwise, arg0.ToString() defines the formatting.

Notes to Callers

En .NET Core y en el .NET Framework 4.0 y versiones posteriores, al crear instancias de la StringBuilder objeto mediante una llamada a la StringBuilder(Int32, Int32) constructor, la longitud y la capacidad de la StringBuilder instancia puede crecer más allá del valor de su MaxCapacity propiedad. In .NET Core and in the .NET Framework 4.0 and later versions, when you instantiate the StringBuilder object by calling the StringBuilder(Int32, Int32) constructor, both the length and the capacity of the StringBuilder instance can grow beyond the value of its MaxCapacity property. Esto puede ocurrir especialmente cuando se llama a la Append(String) y AppendFormat(String, Object) métodos para anexar cadenas pequeñas. This can occur particularly when you call the Append(String) and AppendFormat(String, Object) methods to append small strings.

See Also

AppendFormat(String, Object[]) AppendFormat(String, Object[]) AppendFormat(String, Object[]) AppendFormat(String, Object[])

Anexa a esta instancia la cadena que se devuelve al procesar una cadena con formato compuesto, que contiene cero o más elementos de formato. Appends the string returned by processing a composite format string, which contains zero or more format items, to this instance. Cada elemento de formato se reemplaza por la representación de cadena del argumento correspondiente de una matriz de parámetros. Each format item is replaced by the string representation of a corresponding argument in a parameter array.

public:
 System::Text::StringBuilder ^ AppendFormat(System::String ^ format, ... cli::array <System::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

Parámetros

format
String String String String

Cadena de formato compuesto. A composite format string.

args
Object[]

Matriz de objetos a la que se va a dar formato. An array of objects to format.

Returns

Referencia a la instancia con format anexado. A reference to this instance with format appended. Cada elemento de formato de format se reemplaza con la representación de cadena del argumento de objeto correspondiente. Each format item in format is replaced by the string representation of the corresponding object argument.

Exceptions

El valor de format o args es null. format or args is null.

format no es válido. format is invalid. O bien -or- El índice de un elemento de formato es menor que 0 (cero), o mayor o igual que la longitud de la matriz args. The index of a format item is less than 0 (zero), or greater than or equal to the length of the args array.

La longitud de la cadena expandida superaría MaxCapacity. The length of the expanded string would exceed MaxCapacity.

Examples

En el ejemplo siguiente se muestra el AppendFormat método.The following example demonstrates the AppendFormat method.

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
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 'Main
   
   Public Shared Sub Show(sbs As StringBuilder)
      Console.WriteLine(sbs.ToString())
      sb.Length = 0
   End Sub 'Show
End Class 'Sample
'
'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

Remarks

Este método usa la característica de formato compuesto de .NET Framework para convertir el valor de un objeto en su representación de texto e insertar esa representación actual StringBuilder objeto.This method uses the composite formatting feature of the .NET Framework to convert the value of an object to its text representation and embed that representation in the current StringBuilder object.

El format parámetro consta de cero o más ejecuciones de texto mezclado con cero o más marcadores de posición indizados, denominados elementos de formato, que corresponden a objetos de la lista de parámetros de este método.The format parameter consists of zero or more runs of text intermixed with zero or more indexed placeholders, called format items, that correspond to objects in the parameter list of this method. El proceso de formato reemplaza cada elemento de formato con la representación de cadena del objeto correspondiente.The formatting process replaces each format item with the string representation of the corresponding object.

La sintaxis de un elemento de formato es como sigue:The syntax of a format item is as follows:

{índice[,longitud] [:formatString]}{index[,length][:formatString]}

Los elementos entre corchetes son opcionales.Elements in square brackets are optional. En esta tabla se describe cada elemento.The following table describes each element.

ElementoElement DescripciónDescription
indexindex La posición de base cero en la lista de parámetros del objeto para dar formato.The zero-based position in the parameter list of the object to be formatted. Si el objeto especificado por índice es null, el elemento de formato se reemplaza por String.Empty.If the object specified by index is null, the format item is replaced by String.Empty. Si no hay ningún parámetro en el índice posición, un FormatException se produce.If there is no parameter in the index position, a FormatException is thrown.
,longitud,length El número mínimo de caracteres en la representación de cadena del parámetro.The minimum number of characters in the string representation of the parameter. Si es positivo, el parámetro está alineado a la derecha; Si es negativo, está alineado a izquierda.If positive, the parameter is right-aligned; if negative, it is left-aligned.
:formatString:formatString Una cadena de formato estándar o personalizado que sea compatible con el parámetro.A standard or custom format string that is supported by the parameter.

Nota

Para las cadenas de formato estándar y personalizado utilizadas con valores de fecha y hora, vea Standard Date and Time Format Strings y Custom Date and Time Format Strings.For the standard and custom format strings used with date and time values, see Standard Date and Time Format Strings and Custom Date and Time Format Strings. Para las cadenas de formato estándar y personalizadas utilizadas con valores numéricos, vea cadenas de formato numérico estándar y Custom Numeric Format Strings.For the standard and custom format strings used with numeric values, see Standard Numeric Format Strings and Custom Numeric Format Strings. Para las cadenas de formato estándar puede usar con las enumeraciones, vea Enumeration Format Strings.For the standard format strings used with enumerations, see Enumeration Format Strings.

args representa los objetos que se va a dar formato.args represents the objects to be formatted. Cada elemento de formato de format se reemplaza por la representación de cadena del objeto correspondiente en args.Each format item in format is replaced with the string representation of the corresponding object in args. Si el elemento de formato incluye formatString y el objeto correspondiente en args implementa el IFormattable interfaz, a continuación, args[index].ToString(formatString, provider) define el formato.If the format item includes formatString and the corresponding object in args implements the IFormattable interface, then args[index].ToString(formatString, provider) defines the formatting. En caso contrario, args[index].ToString() define el formato.Otherwise, args[index].ToString() defines the formatting.

Si la cadena asignada a format es "agradecimiento por su donación de {0: ###} latas de comida a nuestra organización benéfica."If the string assigned to format is "Thank you for your donation of {0:####} cans of food to our charitable organization." y arg0 es un entero con el valor 10, el valor devuelto será "Gracias por su donación de 10 latas de comida a nuestra organización benéfica."and arg0 is an integer with the value 10, the return value will be "Thank you for your donation of 10 cans of food to our charitable organization."

Notes to Callers

En .NET Core y en el .NET Framework 4.0 y versiones posteriores, al crear instancias de la StringBuilder objeto mediante una llamada a la StringBuilder(Int32, Int32) constructor, la longitud y la capacidad de la StringBuilder instancia puede crecer más allá del valor de su MaxCapacity propiedad. In .NET Core and in the .NET Framework 4.0 and later versions, when you instantiate the StringBuilder object by calling the StringBuilder(Int32, Int32) constructor, both the length and the capacity of the StringBuilder instance can grow beyond the value of its MaxCapacity property. Esto puede ocurrir especialmente cuando se llama a la Append(String) y AppendFormat(String, Object) métodos para anexar cadenas pequeñas. This can occur particularly when you call the Append(String) and AppendFormat(String, Object) methods to append small strings.

See Also

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

Anexa a esta instancia la cadena que se devuelve al procesar una cadena con formato compuesto, que contiene cero o más elementos de formato. Appends the string returned by processing a composite format string, which contains zero or more format items, to this instance. Cada elemento de formato se reemplaza por la representación en forma de cadena de un único argumento. Each format item is replaced by the string representation of a single argument.

public:
 System::Text::StringBuilder ^ AppendFormat(System::String ^ format, System::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

Parámetros

format
String String String String

Cadena de formato compuesto. A composite format string.

arg0
Object Object Object Object

Objeto al que se va a aplicar el formato. An object to format.

Returns

Referencia a la instancia con format anexado. A reference to this instance with format appended. Cada elemento de formato de format se reemplaza por la representación en forma de cadena de arg0. Each format item in format is replaced by the string representation of arg0.

Exceptions

format no es válido. format is invalid. O bien -or- El índice de un elemento de formato es menor que 0 (cero), o mayor o igual que 1. The index of a format item is less than 0 (zero), or greater than or equal to 1.

La longitud de la cadena expandida superaría MaxCapacity. The length of the expanded string would exceed MaxCapacity.

Examples

En el ejemplo siguiente se muestra el AppendFormat método.The following example demonstrates the AppendFormat method.

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
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 'Main
   
   Public Shared Sub Show(sbs As StringBuilder)
      Console.WriteLine(sbs.ToString())
      sb.Length = 0
   End Sub 'Show
End Class 'Sample
'
'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

Remarks

Este método usa la característica de formato compuesto de .NET Framework para convertir el valor de un objeto en su representación de texto e insertar esa representación actual StringBuilder objeto.This method uses the composite formatting feature of the .NET Framework to convert the value of an object to its text representation and embed that representation in the current StringBuilder object.

El format parámetro consta de cero o más ejecuciones de texto mezclado con cero o más marcadores de posición indizados, denominados elementos de formato.The format parameter consists of zero or more runs of text intermixed with zero or more indexed placeholders, called format items. El índice de los elementos de formato debe ser 0, que corresponden a arg0, el objeto único en la lista de parámetros de este método.The index of the format items must be 0, to correspond to arg0, the single object in the parameter list of this method. El proceso de formato reemplaza cada elemento de formato con la representación de cadena de arg0.The formatting process replaces each format item with the string representation of arg0.

La sintaxis de un elemento de formato es como sigue:The syntax of a format item is as follows:

{índice[,longitud] [:formatString]}{index[,length][:formatString]}

Los elementos entre corchetes son opcionales.Elements in square brackets are optional. En esta tabla se describe cada elemento.The following table describes each element.

ElementoElement DescripciónDescription
indexindex La posición de base cero en la lista de parámetros del objeto para dar formato.The zero-based position in the parameter list of the object to be formatted. Si el objeto especificado por índice es null, el elemento de formato se reemplaza por String.Empty.If the object specified by index is null, the format item is replaced by String.Empty. Si no hay ningún parámetro en el índice posición, un FormatException se produce.If there is no parameter in the index position, a FormatException is thrown.
,longitud,length El número mínimo de caracteres en la representación de cadena del parámetro.The minimum number of characters in the string representation of the parameter. Si es positivo, el parámetro está alineado a la derecha; Si es negativo, está alineado a izquierda.If positive, the parameter is right-aligned; if negative, it is left-aligned.
:formatString:formatString Una cadena de formato estándar o personalizado que sea compatible con el parámetro.A standard or custom format string that is supported by the parameter.

Nota

Para las cadenas de formato estándar y personalizado utilizadas con valores de fecha y hora, vea Standard Date and Time Format Strings y Custom Date and Time Format Strings.For the standard and custom format strings used with date and time values, see Standard Date and Time Format Strings and Custom Date and Time Format Strings. Para las cadenas de formato estándar y personalizadas utilizadas con valores numéricos, vea cadenas de formato numérico estándar y Custom Numeric Format Strings.For the standard and custom format strings used with numeric values, see Standard Numeric Format Strings and Custom Numeric Format Strings. Para las cadenas de formato estándar puede usar con las enumeraciones, vea Enumeration Format Strings.For the standard format strings used with enumerations, see Enumeration Format Strings.

arg0 representa el objeto que se va a dar formato.arg0 represents the object to be formatted. Cada elemento de formato de format se reemplaza por la representación de cadena de arg0.Each format item in format is replaced with the string representation of arg0. Si el elemento de formato incluye formatString y arg0 implementa el IFormattable interfaz, a continuación, arg0.ToString(formatString, null) define el formato.If the format item includes formatString and arg0 implements the IFormattable interface, then arg0.ToString(formatString, null) defines the formatting. En caso contrario, arg0.ToString() define el formato.Otherwise, arg0.ToString() defines the formatting.

Si la cadena asignada a format es "agradecimiento por su donación de {0: ###} latas de comida a nuestra organización benéfica."If the string assigned to format is "Thank you for your donation of {0:####} cans of food to our charitable organization." y arg0 es un entero con el valor 10, el valor devuelto será "Gracias por su donación de 10 latas de comida a nuestra organización benéfica."and arg0 is an integer with the value 10, the return value will be "Thank you for your donation of 10 cans of food to our charitable organization."

Notes to Callers

En .NET Core y en el .NET Framework 4.0 y versiones posteriores, al crear instancias de la StringBuilder objeto mediante una llamada a la StringBuilder(Int32, Int32) constructor, la longitud y la capacidad de la StringBuilder instancia puede crecer más allá del valor de su MaxCapacity propiedad. In .NET Core and in the .NET Framework 4.0 and later versions, when you instantiate the StringBuilder object by calling the StringBuilder(Int32, Int32) constructor, both the length and the capacity of the StringBuilder instance can grow beyond the value of its MaxCapacity property. Esto puede ocurrir especialmente cuando se llama a la Append(String) y AppendFormat(String, Object) métodos para anexar cadenas pequeñas. This can occur particularly when you call the Append(String) and AppendFormat(String, Object) methods to append small strings.

See Also

AppendFormat(IFormatProvider, String, Object[]) AppendFormat(IFormatProvider, String, Object[]) AppendFormat(IFormatProvider, String, Object[]) AppendFormat(IFormatProvider, String, Object[])

Anexa a esta instancia la cadena que se devuelve al procesar una cadena con formato compuesto, que contiene cero o más elementos de formato. Appends the string returned by processing a composite format string, which contains zero or more format items, to this instance. Cada elemento de formato se reemplaza con la representación de cadena del argumento correspondiente de una matriz de parámetros, utilizando el proveedor de formato especificado. Each format item is replaced by the string representation of a corresponding argument in a parameter array using a specified format provider.

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);
member this.AppendFormat : IFormatProvider * string * obj[] -> System.Text.StringBuilder
Public Function AppendFormat (provider As IFormatProvider, format As String, ParamArray args As Object()) As StringBuilder

Parámetros

provider
IFormatProvider IFormatProvider IFormatProvider IFormatProvider

Objeto que proporciona información de formato específica de la referencia cultural. An object that supplies culture-specific formatting information.

format
String String String String

Cadena de formato compuesto. A composite format string.

args
Object[]

Matriz de objetos a la que se va a dar formato. An array of objects to format.

Returns

Referencia a esta instancia después de que se complete la operación de anexado. A reference to this instance after the append operation has completed. Después de la operación de anexado, esta instancia contiene todos los datos que existían antes de la operación, seguidos de una copia de format como sufijo, en la que cualquier especificación de formato se reemplaza con la representación en forma de cadena del argumento de objeto correspondiente. After the append operation, this instance contains any data that existed before the operation, suffixed by a copy of format where any format specification is replaced by the string representation of the corresponding object argument.

Exceptions

format no es válido. format is invalid. O bien -or- El índice de un elemento de formato es menor que 0 (cero), o mayor o igual que la longitud de la matriz args. The index of a format item is less than 0 (zero), or greater than or equal to the length of the args array.

La longitud de la cadena expandida superaría MaxCapacity. The length of the expanded string would exceed MaxCapacity.

Examples

En el ejemplo siguiente se muestra el AppendFormat método.The following example demonstrates the AppendFormat method.

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
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 'Main
   
   Public Shared Sub Show(sbs As StringBuilder)
      Console.WriteLine(sbs.ToString())
      sb.Length = 0
   End Sub 'Show
End Class 'Sample
'
'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

En el ejemplo siguiente se define un personalizado IFormatProvider implementación denominada CustomerFormatter que da formato a un cliente de 10 dígitos con guiones después de la cuarto y séptimo dígitos.The following example defines a custom IFormatProvider implementation named CustomerFormatter that formats a 10-digit customer number with hyphens after the fourth and seventh digits. Se pasa a la StringBuilder.AppendFormat(IFormatProvider, String, Object[]) método para crear una cadena que incluye el número de cliente con formato y el nombre del cliente.It is passed to the StringBuilder.AppendFormat(IFormatProvider, String, Object[]) method to create a string that includes the formatted customer number and customer name.

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

Remarks

Este método usa la característica de formato compuesto de .NET Framework para convertir el valor de un objeto en su representación de texto e insertar esa representación actual StringBuilder objeto.This method uses the composite formatting feature of the .NET Framework to convert the value of an object to its text representation and embed that representation in the current StringBuilder object.

El format parámetro consta de cero o más ejecuciones de texto mezclado con cero o más marcadores de posición indizados, denominados elementos de formato, que corresponden a objetos de la lista de parámetros de este método.The format parameter consists of zero or more runs of text intermixed with zero or more indexed placeholders, called format items, that correspond to objects in the parameter list of this method. El proceso de formato reemplaza cada elemento de formato con la representación de cadena del objeto correspondiente.The formatting process replaces each format item with the string representation of the corresponding object.

La sintaxis de un elemento de formato es como sigue:The syntax of a format item is as follows:

{índice[,longitud] [:formatString]}{index[,length][:formatString]}

Los elementos entre corchetes son opcionales.Elements in square brackets are optional. En esta tabla se describe cada elemento.The following table describes each element.

ElementoElement DescripciónDescription
indexindex La posición de base cero en la lista de parámetros del objeto para dar formato.The zero-based position in the parameter list of the object to be formatted. Si el objeto especificado por índice es null, el elemento de formato se reemplaza por String.Empty.If the object specified by index is null, the format item is replaced by String.Empty. Si no hay ningún parámetro en el índice posición, un FormatException se produce.If there is no parameter in the index position, a FormatException is thrown.
,longitud,length El número mínimo de caracteres en la representación de cadena del parámetro.The minimum number of characters in the string representation of the parameter. Si es positivo, el parámetro está alineado a la derecha; Si es negativo, está alineado a izquierda.If positive, the parameter is right-aligned; if negative, it is left-aligned.
:formatString:formatString Una cadena de formato estándar o personalizado que sea compatible con el parámetro.A standard or custom format string that is supported by the parameter.

Nota

Para las cadenas de formato estándar y personalizado utilizadas con valores de fecha y hora, vea Standard Date and Time Format Strings y Custom Date and Time Format Strings.For the standard and custom format strings used with date and time values, see Standard Date and Time Format Strings and Custom Date and Time Format Strings. Para las cadenas de formato estándar y personalizadas utilizadas con valores numéricos, vea cadenas de formato numérico estándar y Custom Numeric Format Strings.For the standard and custom format strings used with numeric values, see Standard Numeric Format Strings and Custom Numeric Format Strings. Para las cadenas de formato estándar puede usar con las enumeraciones, vea Enumeration Format Strings.For the standard format strings used with enumerations, see Enumeration Format Strings.

El provider parámetro especifica un IFormatProvider implementación que puede proporcionar información de formato para los objetos en args.The provider parameter specifies an IFormatProvider implementation that can provide formatting information for the objects in args. provider puede ser de cualquiera de las funciones siguientes:provider can be any of the following:

Si el provider parámetro es null, se obtiene información del proveedor de formato de la referencia cultural actual.If the provider parameter is null, format provider information is obtained from the current culture.

args representa los objetos que se va a dar formato.args represents the objects to be formatted. Cada elemento de formato de format se reemplaza por la representación de cadena del objeto correspondiente en args.Each format item in format is replaced with the string representation of the corresponding object in args. Si el elemento de formato incluye formatString y el objeto correspondiente en args implementa el IFormattable interfaz, a continuación, args[index].ToString(formatString, provider) define el formato.If the format item includes formatString and the corresponding object in args implements the IFormattable interface, then args[index].ToString(formatString, provider) defines the formatting. En caso contrario, args[index].ToString() define el formato.Otherwise, args[index].ToString() defines the formatting.

Notes to Callers

En .NET Core y en el .NET Framework 4.0 y versiones posteriores, al crear instancias de la StringBuilder objeto mediante una llamada a la StringBuilder(Int32, Int32) constructor, la longitud y la capacidad de la StringBuilder instancia puede crecer más allá del valor de su MaxCapacity propiedad. In .NET Core and in the .NET Framework 4.0 and later versions, when you instantiate the StringBuilder object by calling the StringBuilder(Int32, Int32) constructor, both the length and the capacity of the StringBuilder instance can grow beyond the value of its MaxCapacity property. Esto puede ocurrir especialmente cuando se llama a la Append(String) y AppendFormat(String, Object) métodos para anexar cadenas pequeñas. This can occur particularly when you call the Append(String) and AppendFormat(String, Object) methods to append small strings.

See Also

Applies to