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

Definice

Připojí řetězec vrácený zpracováním složeného formátovacího řetězce, který v této instanci obsahuje nula nebo více položek formátu.Appends the string returned by processing a composite format string, which contains zero or more format items, to this instance. Každá položka formátu je nahrazena řetězcovou reprezentací odpovídajícího argumentu objektu.Each format item is replaced by the string representation of a corresponding object argument.

Přetížení

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

Připojí řetězec vrácený zpracováním složeného formátovacího řetězce, který v této instanci obsahuje nula nebo více položek formátu.Appends the string returned by processing a composite format string, which contains zero or more format items, to this instance. Každá položka formátu je nahrazena řetězcovou reprezentací jednoho ze tří argumentů pomocí zadaného poskytovatele formátu.Each format item is replaced by the string representation of either of three arguments using a specified format provider.

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

Připojí řetězec vrácený zpracováním složeného formátovacího řetězce, který v této instanci obsahuje nula nebo více položek formátu.Appends the string returned by processing a composite format string, which contains zero or more format items, to this instance. Každá položka formátu je nahrazena řetězcovou reprezentací jediného argumentu.Each format item is replaced by the string representation of a single argument.

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

Připojí řetězec vrácený zpracováním složeného formátovacího řetězce, který v této instanci obsahuje nula nebo více položek formátu.Appends the string returned by processing a composite format string, which contains zero or more format items, to this instance. Každá položka formátu je nahrazena řetězcovou reprezentací odpovídajícího argumentu v poli parametrů.Each format item is replaced by the string representation of a corresponding argument in a parameter array.

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

Připojí řetězec vrácený zpracováním složeného formátovacího řetězce, který v této instanci obsahuje nula nebo více položek formátu.Appends the string returned by processing a composite format string, which contains zero or more format items, to this instance. Každá položka formátu je nahrazena řetězcovou reprezentací jediného argumentu pomocí zadaného poskytovatele formátu.Each format item is replaced by the string representation of a single argument using a specified format provider.

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

Připojí řetězec vrácený zpracováním složeného formátovacího řetězce, který v této instanci obsahuje nula nebo více položek formátu.Appends the string returned by processing a composite format string, which contains zero or more format items, to this instance. Každá položka formátu je nahrazena řetězcovou reprezentací odpovídajícího argumentu v poli parametrů pomocí zadaného poskytovatele formátu.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) AppendFormat(String, Object, Object) AppendFormat(String, Object, Object) AppendFormat(String, Object, Object)

Připojí řetězec vrácený zpracováním složeného formátovacího řetězce, který v této instanci obsahuje nula nebo více položek formátu.Appends the string returned by processing a composite format string, which contains zero or more format items, to this instance. Každá položka formátu je nahrazena řetězcovou reprezentací některého ze dvou argumentů.Each format item is replaced by the string representation of either of two arguments.

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

Připojí řetězec vrácený zpracováním složeného formátovacího řetězce, který v této instanci obsahuje nula nebo více položek formátu.Appends the string returned by processing a composite format string, which contains zero or more format items, to this instance. Každá položka formátu je nahrazena řetězcovou reprezentací některého ze dvou argumentů pomocí zadaného poskytovatele formátu.Each format item is replaced by the string representation of either of two arguments 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)

Připojí řetězec vrácený zpracováním složeného formátovacího řetězce, který v této instanci obsahuje nula nebo více položek formátu.Appends the string returned by processing a composite format string, which contains zero or more format items, to this instance. Každá položka formátu je nahrazena řetězcovou reprezentací jednoho ze tří argumentů.Each format item is replaced by the string representation of either of three 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)

Připojí řetězec vrácený zpracováním složeného formátovacího řetězce, který v této instanci obsahuje nula nebo více položek formátu.Appends the string returned by processing a composite format string, which contains zero or more format items, to this instance. Každá položka formátu je nahrazena řetězcovou reprezentací jednoho ze tří argumentů pomocí zadaného poskytovatele formátu.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

Parametry

provider
IFormatProvider IFormatProvider IFormatProvider IFormatProvider

Objekt, který poskytuje informace o formátování specifické pro jazykovou verzi.An object that supplies culture-specific formatting information.

format
String String String String

Složený řetězec formátu.A composite format string.

arg0
Object Object Object Object

První objekt pro formátování.The first object to format.

arg1
Object Object Object Object

Druhý objekt pro formátování.The second object to format.

arg2
Object Object Object Object

Třetí objekt pro formátování.The third object to format.

Návraty

Odkaz na tuto instanci po dokončení operace APPEND.A reference to this instance after the append operation has completed. Po operaci připojit tato instance obsahuje všechna data, která existovala před operací, s příponou kopie format , kde jakákoli specifikace formátu je nahrazena řetězcovou reprezentací odpovídajícího argumentu objektu.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.

Výjimky

Formát format je neplatný.format is invalid.

-nebo--or- Index položky formátu je menší než 0 (nula) nebo větší nebo roven 3 (tři).The index of a format item is less than 0 (zero), or greater than or equal to 3 (three).

Délka rozšířeného řetězce by překročila MaxCapacity.The length of the expanded string would exceed MaxCapacity.

Příklady

Následující příklad používá AppendFormat(IFormatProvider, String, Object, Object, Object) metodu k ilustraci výsledku logické And operace s celočíselnými hodnotami.The following example uses the AppendFormat(IFormatProvider, String, Object, Object, Object) method to illustrate the result of a Boolean And operation with integer values. Všimněte si, že formátovací řetězec obsahuje šest formátovacích položek, ale metoda má v seznamu argumentů pouze tři položky, protože každá položka je formátována dvěma různými způsoby.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)

Poznámky

Tato metoda používá funkci složeného formátování .NET Framework k převodu hodnoty objektu na jeho textovou reprezentaci a vložení této reprezentace do aktuálního StringBuilder objektu.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.

format Parametr se skládá z nuly nebo více běhů textu v kombinaci s nula nebo více indexovanými zástupnými symboly, které odpovídají objektům v seznamu parametrů této metody.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. Proces formátování nahradí každou položku formátu řetězcovou reprezentací odpovídajícího objektu.The formatting process replaces each format item with the string representation of the corresponding object.

Syntaxe položky formátu je následující:The syntax of a format item is as follows:

{index[,Length] [:formatString]}{index[,length][:formatString]}

Prvky v hranatých závorkách jsou volitelné.Elements in square brackets are optional. Následující tabulka popisuje jednotlivé prvky.The following table describes each element.

PrvekElement PopisDescription
indexindex Pozice s nulovým základem v seznamu parametrů objektu, který má být formátován.The zero-based position in the parameter list of the object to be formatted. Pokud je nullobjekt určený indexem , String.Emptypoložka formátu je nahrazena.If the object specified by index is null, the format item is replaced by String.Empty. Pokud na pozici indexu není žádný parametr, FormatException je vyvolána výjimka.If there is no parameter in the index position, a FormatException is thrown.
,Délka,length Minimální počet znaků v řetězcové reprezentaci parametru.The minimum number of characters in the string representation of the parameter. Pokud je kladné, je parametr zarovnán vpravo; Pokud je hodnota záporná, zůstane zarovnaná doleva.If positive, the parameter is right-aligned; if negative, it is left-aligned.
:formatString:formatString Standardní nebo vlastní řetězec formátu, který je podporován parametrem.A standard or custom format string that is supported by the parameter.

Poznámka

Pro standardní a vlastní řetězce formátu používané s hodnotami data a času naleznete v tématu Standardní řetězce formátu data a času a Vlastní řetězce formátu data a času.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. Pro standardní a vlastní řetězce formátu používané s číselnými hodnotami si přečtěte téma Standardní číselné formátovací řetězce a vlastní číselné formátovací řetězce.For the standard and custom format strings used with numeric values, see Standard Numeric Format Strings and Custom Numeric Format Strings. Standardní formátovací řetězce používané s výčty najdete v tématu výčtové řetězce formátu.For the standard format strings used with enumerations, see Enumeration Format Strings.

Parametr určuje implementaci, která může poskytnout informace o formátování pro arg0 a arg1. provider IFormatProviderThe provider parameter specifies an IFormatProvider implementation that can provide formatting information for arg0 and arg1. providermůže to být kterýkoli z následujících:provider can be any of the following:

  • CultureInfo Objekt, který poskytuje informace o formátování specifické pro jazykovou verzi.A CultureInfo object that provides culture-specific formatting information.

  • Objekt, který poskytuje informace o formátování specifické pro jazykovou arg1 verzi pro arg0 nebo, pokud se jedná o číselné hodnoty. NumberFormatInfoA NumberFormatInfo object that provides culture-specific formatting information for arg0 or arg1 if they are numeric values.

  • Objekt, který poskytuje informace o formátování specifické pro jazykovou arg1verzi pro arg2 arg0,, nebo, pokud se jedná o hodnoty data a času. DateTimeFormatInfoA DateTimeFormatInfo object that provides culture-specific formatting information for arg0, arg1, or arg2 if they are date and time values.

  • Vlastní IFormatProvider implementace, která poskytuje informace o formátování arg0pro arg1, a arg2.A custom IFormatProvider implementation that provides formatting information for arg0, arg1, and arg2. Obvykle taková implementace implementuje ICustomFormatter i rozhraní.Typically, such an implementation also implements the ICustomFormatter interface.

Pokud je provider nullparametr, informace o poskytovateli formátu jsou získány z aktuální jazykové verze.If the provider parameter is null, format provider information is obtained from the current culture.

arg0, arg1 aarg2 reprezentovat objekty, které mají být formátovány.arg0, arg1, and arg2 represent the objects to be formatted. Každá položka formátu v format je nahrazena řetězcovou reprezentací objektu, který má odpovídající index.Each format item in format is replaced with the string representation of the object that has the corresponding index. Pokud položka formátu zahrnuje formatString a odpovídající argument IFormattable implementuje rozhraní ToString(formatString, provider) , pak metoda argumentu definuje formátování.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. V opačném případě ToString() metoda argumentu definuje formátování.Otherwise, the argument's ToString() method defines the formatting.

Poznámky pro volající

V rozhraní .NET Core a v .NET Framework 4,0 StringBuilder a novějších verzích při vytváření instance objektu StringBuilder(Int32, Int32) voláním konstruktoru může být délka i kapacita StringBuilder instance větší než hodnota jejího MaxCapacity majetek.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. K tomu může dojít zejména při volání Append(String) metod a AppendFormat(String, Object) pro připojení malých řetězců.This can occur particularly when you call the Append(String) and AppendFormat(String, Object) methods to append small strings.

Viz také

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

Připojí řetězec vrácený zpracováním složeného formátovacího řetězce, který v této instanci obsahuje nula nebo více položek formátu.Appends the string returned by processing a composite format string, which contains zero or more format items, to this instance. Každá položka formátu je nahrazena řetězcovou reprezentací jediného argumentu.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

Parametry

format
String String String String

Složený řetězec formátu.A composite format string.

arg0
Object Object Object Object

Objekt, který chcete formátovat.An object to format.

Návraty

Odkaz na tuto instanci s format připojením.A reference to this instance with format appended. Každá položka formátu v format je nahrazena řetězcovou arg0reprezentací.Each format item in format is replaced by the string representation of arg0.

Výjimky

Formát format je neplatný.format is invalid.

-nebo--or- Index položky formátu je menší než 0 (nula) nebo větší nebo roven 1.The index of a format item is less than 0 (zero), or greater than or equal to 1.

Délka rozšířeného řetězce by překročila MaxCapacity.The length of the expanded string would exceed MaxCapacity.

Příklady

Následující příklad ukazuje AppendFormat metodu.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.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

Poznámky

Tato metoda používá funkci složeného formátování .NET Framework k převodu hodnoty objektu na jeho textovou reprezentaci a vložení této reprezentace do aktuálního StringBuilder objektu.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.

Parametr format se skládá z nuly nebo více běhů textu v kombinaci s nula nebo více indexovanými zástupnými symboly, které se nazývají položky formátu.The format parameter consists of zero or more runs of text intermixed with zero or more indexed placeholders, called format items. Index položek formátu musí být 0, aby odpovídal arg0jednomu objektu v seznamu parametrů této metody.The index of the format items must be 0, to correspond to arg0, the single object in the parameter list of this method. Proces formátování nahradí každou položku formátu řetězcem reprezentace arg0.The formatting process replaces each format item with the string representation of arg0.

Syntaxe položky formátu je následující:The syntax of a format item is as follows:

{index[,Length] [:formatString]}{index[,length][:formatString]}

Prvky v hranatých závorkách jsou volitelné.Elements in square brackets are optional. Následující tabulka popisuje jednotlivé prvky.The following table describes each element.

PrvekElement PopisDescription
indexindex Pozice s nulovým základem v seznamu parametrů objektu, který má být formátován.The zero-based position in the parameter list of the object to be formatted. Pokud je nullobjekt určený indexem , String.Emptypoložka formátu je nahrazena.If the object specified by index is null, the format item is replaced by String.Empty. Pokud na pozici indexu není žádný parametr, FormatException je vyvolána výjimka.If there is no parameter in the index position, a FormatException is thrown.
,Délka,length Minimální počet znaků v řetězcové reprezentaci parametru.The minimum number of characters in the string representation of the parameter. Pokud je kladné, je parametr zarovnán vpravo; Pokud je hodnota záporná, zůstane zarovnaná doleva.If positive, the parameter is right-aligned; if negative, it is left-aligned.
:formatString:formatString Standardní nebo vlastní řetězec formátu, který je podporován parametrem.A standard or custom format string that is supported by the parameter.

Poznámka

Pro standardní a vlastní řetězce formátu používané s hodnotami data a času naleznete v tématu Standardní řetězce formátu data a času a Vlastní řetězce formátu data a času.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. Pro standardní a vlastní řetězce formátu používané s číselnými hodnotami si přečtěte téma Standardní číselné formátovací řetězce a vlastní číselné formátovací řetězce.For the standard and custom format strings used with numeric values, see Standard Numeric Format Strings and Custom Numeric Format Strings. Standardní formátovací řetězce používané s výčty najdete v tématu výčtové řetězce formátu.For the standard format strings used with enumerations, see Enumeration Format Strings.

arg0představuje objekt, který má být formátován.arg0 represents the object to be formatted. Každá položka formátu v format je nahrazena řetězcovou arg0reprezentací.Each format item in format is replaced with the string representation of arg0. Pokud položka formátu formatString zahrnuje a arg0 IFormattable implementujerozhraní,definujeformátování.arg0.ToString(formatString, null)If the format item includes formatString and arg0 implements the IFormattable interface, then arg0.ToString(formatString, null) defines the formatting. V opačném případě definuje formátování. arg0.ToString()Otherwise, arg0.ToString() defines the formatting.

Pokud je řetězec, ke format kterému je přiřazený, Děkujeme za váš darování {0: # # # #} plechovek v potravinách až k naší dobročinné organizaci. "If the string assigned to format is "Thank you for your donation of {0:####} cans of food to our charitable organization." a arg0 je celé číslo s hodnotou 10, návratová hodnota bude "Děkujeme za váš darování 10 plechovek v naší dobročinné organizaci."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."

Poznámky pro volající

V rozhraní .NET Core a v .NET Framework 4,0 StringBuilder a novějších verzích při vytváření instance objektu StringBuilder(Int32, Int32) voláním konstruktoru může být délka i kapacita StringBuilder instance větší než hodnota jejího MaxCapacity majetek.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. K tomu může dojít zejména při volání Append(String) metod a AppendFormat(String, Object) pro připojení malých řetězců.This can occur particularly when you call the Append(String) and AppendFormat(String, Object) methods to append small strings.

Viz také

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

Připojí řetězec vrácený zpracováním složeného formátovacího řetězce, který v této instanci obsahuje nula nebo více položek formátu.Appends the string returned by processing a composite format string, which contains zero or more format items, to this instance. Každá položka formátu je nahrazena řetězcovou reprezentací odpovídajícího argumentu v poli parametrů.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

Parametry

format
String String String String

Složený řetězec formátu.A composite format string.

args
Object[]

Pole objektů, které se mají formátovatAn array of objects to format.

Návraty

Odkaz na tuto instanci s format připojením.A reference to this instance with format appended. Každá položka formátu v format je nahrazena řetězcovou reprezentací odpovídajícího argumentu objektu.Each format item in format is replaced by the string representation of the corresponding object argument.

Výjimky

Formát format je neplatný.format is invalid.

-nebo--or- Index položky formátu je menší než 0 (nula) nebo větší nebo roven délce args pole.The index of a format item is less than 0 (zero), or greater than or equal to the length of the args array.

Délka rozšířeného řetězce by překročila MaxCapacity.The length of the expanded string would exceed MaxCapacity.

Příklady

Následující příklad ukazuje AppendFormat metodu.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.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

Poznámky

Tato metoda používá funkci složeného formátování .NET Framework k převodu hodnoty objektu na jeho textovou reprezentaci a vložení této reprezentace do aktuálního StringBuilder objektu.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.

format Parametr se skládá z nuly nebo více běhů textu v kombinaci s nula nebo více indexovanými zástupnými symboly, které odpovídají objektům v seznamu parametrů této metody.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. Proces formátování nahradí každou položku formátu řetězcovou reprezentací odpovídajícího objektu.The formatting process replaces each format item with the string representation of the corresponding object.

Syntaxe položky formátu je následující:The syntax of a format item is as follows:

{index[,Length] [:formatString]}{index[,length][:formatString]}

Prvky v hranatých závorkách jsou volitelné.Elements in square brackets are optional. Následující tabulka popisuje jednotlivé prvky.The following table describes each element.

PrvekElement PopisDescription
indexindex Pozice s nulovým základem v seznamu parametrů objektu, který má být formátován.The zero-based position in the parameter list of the object to be formatted. Pokud je nullobjekt určený indexem , String.Emptypoložka formátu je nahrazena.If the object specified by index is null, the format item is replaced by String.Empty. Pokud na pozici indexu není žádný parametr, FormatException je vyvolána výjimka.If there is no parameter in the index position, a FormatException is thrown.
,Délka,length Minimální počet znaků v řetězcové reprezentaci parametru.The minimum number of characters in the string representation of the parameter. Pokud je kladné, je parametr zarovnán vpravo; Pokud je hodnota záporná, zůstane zarovnaná doleva.If positive, the parameter is right-aligned; if negative, it is left-aligned.
:formatString:formatString Standardní nebo vlastní řetězec formátu, který je podporován parametrem.A standard or custom format string that is supported by the parameter.

Poznámka

Pro standardní a vlastní řetězce formátu používané s hodnotami data a času naleznete v tématu Standardní řetězce formátu data a času a Vlastní řetězce formátu data a času.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. Pro standardní a vlastní řetězce formátu používané s číselnými hodnotami si přečtěte téma Standardní číselné formátovací řetězce a vlastní číselné formátovací řetězce.For the standard and custom format strings used with numeric values, see Standard Numeric Format Strings and Custom Numeric Format Strings. Standardní formátovací řetězce používané s výčty najdete v tématu výčtové řetězce formátu.For the standard format strings used with enumerations, see Enumeration Format Strings.

argspředstavuje objekty, které mají být formátovány.args represents the objects to be formatted. Každá položka formátu v format je nahrazena řetězcovou reprezentací odpovídajícího objektu v. argsEach format item in format is replaced with the string representation of the corresponding object in args. Pokud položka formátu formatString zahrnuje a odpovídající objekt v args args[index].ToString(formatString, provider) implementuje IFormattable rozhraní, definuje formátování.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. V opačném případě definuje formátování. args[index].ToString()Otherwise, args[index].ToString() defines the formatting.

Pokud je řetězec, ke format kterému je přiřazený, Děkujeme za váš darování {0: # # # #} plechovek v potravinách až k naší dobročinné organizaci. "If the string assigned to format is "Thank you for your donation of {0:####} cans of food to our charitable organization." a arg0 je celé číslo s hodnotou 10, návratová hodnota bude "Děkujeme za váš darování 10 plechovek v naší dobročinné organizaci."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."

Poznámky pro volající

V rozhraní .NET Core a v .NET Framework 4,0 StringBuilder a novějších verzích při vytváření instance objektu StringBuilder(Int32, Int32) voláním konstruktoru může být délka i kapacita StringBuilder instance větší než hodnota jejího MaxCapacity majetek.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. K tomu může dojít zejména při volání Append(String) metod a AppendFormat(String, Object) pro připojení malých řetězců.This can occur particularly when you call the Append(String) and AppendFormat(String, Object) methods to append small strings.

Viz také

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

Připojí řetězec vrácený zpracováním složeného formátovacího řetězce, který v této instanci obsahuje nula nebo více položek formátu.Appends the string returned by processing a composite format string, which contains zero or more format items, to this instance. Každá položka formátu je nahrazena řetězcovou reprezentací jediného argumentu pomocí zadaného poskytovatele formátu.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

Parametry

provider
IFormatProvider IFormatProvider IFormatProvider IFormatProvider

Objekt, který poskytuje informace o formátování specifické pro jazykovou verzi.An object that supplies culture-specific formatting information.

format
String String String String

Složený řetězec formátu.A composite format string.

arg0
Object Object Object Object

Objekt, který má být zformátován.The object to format.

Návraty

Odkaz na tuto instanci po dokončení operace APPEND.A reference to this instance after the append operation has completed. Po operaci připojit tato instance obsahuje všechna data, která existovala před operací, s příponou kopie format , ve které je jakákoli specifikace formátu nahrazena řetězcovou arg0reprezentací.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.

Výjimky

Formát format je neplatný.format is invalid.

-nebo--or- Index položky formátu je menší než 0 (nula) nebo větší nebo roven jedné (1).The index of a format item is less than 0 (zero), or greater than or equal to one (1).

Délka rozšířeného řetězce by překročila MaxCapacity.The length of the expanded string would exceed MaxCapacity.

Příklady

Následující obsahuje dvě volání AppendFormat(IFormatProvider, String, Object) metody.The following includes two calls to the AppendFormat(IFormatProvider, String, Object) method. Oba používají konvence formátování jazykové verze English-Great Británie (en-GB).Both use the formatting conventions of the English-Great Britain (en-GB) culture. První vloží řetězcovou reprezentaci Decimal hodnoty měny ve výsledném řetězci.The first inserts the string representation of a Decimal value currency in a result string. Druhá vloží DateTime hodnotu ve výsledném řetězci do dvou míst, první, včetně pouze krátkého řetězce data a druhého krátkého času řetězce.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

Poznámky

Tato metoda používá funkci složeného formátování .NET Framework k převodu hodnoty arg0 na její textovou reprezentaci a vložení této reprezentace do aktuálního StringBuilder objektu.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.

Parametr format se skládá z nuly nebo více běhů textu v kombinaci s nula nebo více indexovanými zástupnými symboly, které se nazývají položky formátu.The format parameter consists of zero or more runs of text intermixed with zero or more indexed placeholders, called format items. Index každé položky formátu musí být nula (0), protože tato metoda zahrnuje seznam argumentů s jedním argumentem.The index of each format item must be zero (0) since this method includes an argument list with a single argument. Proces formátování nahradí každou položku formátu řetězcem reprezentace arg0.The formatting process replaces each format item with the string representation of arg0.

Syntaxe položky formátu je následující:The syntax of a format item is as follows:

{index[,Length] [:formatString]}{index[,length][:formatString]}

Prvky v hranatých závorkách jsou volitelné.Elements in square brackets are optional. Následující tabulka popisuje jednotlivé prvky.The following table describes each element.

PrvekElement PopisDescription
indexindex Pozice s nulovým základem v seznamu parametrů objektu, který má být formátován.The zero-based position in the parameter list of the object to be formatted. Pokud je nullobjekt určený indexem , String.Emptypoložka formátu je nahrazena.If the object specified by index is null, the format item is replaced by String.Empty. V takovém případě, vzhledem AppendFormat(IFormatProvider, String, Object) k tomu, že metoda má v seznamu argumentů jeden argument, musí mít hodnota index vždycky hodnotu 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. Pokud není, FormatException je vyvolána.If it is not, a FormatException is thrown.
,Délka,length Minimální počet znaků v řetězcové reprezentaci parametru.The minimum number of characters in the string representation of the parameter. Pokud je kladné, je parametr zarovnán vpravo; Pokud je hodnota záporná, zůstane zarovnaná doleva.If positive, the parameter is right-aligned; if negative, it is left-aligned.
:formatString:formatString Standardní nebo vlastní řetězec formátu, který je podporován parametrem.A standard or custom format string that is supported by the parameter.

Poznámka

Pro standardní a vlastní řetězce formátu používané s hodnotami data a času naleznete v tématu Standardní řetězce formátu data a času a Vlastní řetězce formátu data a času.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. Pro standardní a vlastní řetězce formátu používané s číselnými hodnotami si přečtěte téma Standardní číselné formátovací řetězce a vlastní číselné formátovací řetězce.For the standard and custom format strings used with numeric values, see Standard Numeric Format Strings and Custom Numeric Format Strings. Standardní formátovací řetězce používané s výčty najdete v tématu výčtové řetězce formátu.For the standard format strings used with enumerations, see Enumeration Format Strings.

Parametr určuje implementaci, která může poskytnout informace o formátování pro objekty v args. provider IFormatProviderThe provider parameter specifies an IFormatProvider implementation that can provide formatting information for the objects in args. providermůže to být kterýkoli z následujících:provider can be any of the following:

  • CultureInfo Objekt, který poskytuje informace o formátování specifické pro jazykovou verzi.A CultureInfo object that provides culture-specific formatting information.

  • Objekt, který poskytuje informace o formátování specifické pro jazykovou verzi v arg0 případě, že se jedná o číselnou hodnotu. NumberFormatInfoA NumberFormatInfo object that provides culture-specific formatting information for arg0 if it is a numeric value.

  • Objekt, který poskytuje informace o formátování specifické pro arg0 jazykovou verzi, pokud se jedná o hodnotu data a času. DateTimeFormatInfoA DateTimeFormatInfo object that provides culture-specific formatting information for arg0 if it is a date and time value.

  • Vlastní IFormatProvider implementace, která poskytuje informace o formátování arg0pro.A custom IFormatProvider implementation that provides formatting information for arg0. Obvykle taková implementace implementuje ICustomFormatter i rozhraní.Typically, such an implementation also implements the ICustomFormatter interface.

Pokud je provider nullparametr, informace o formátování jsou získány z aktuální jazykové verze.If the provider parameter is null, formatting information is obtained from the current culture.

arg0představuje objekt, který má být formátován.arg0 represents the object to be formatted. Každá položka formátu v format je nahrazena řetězcovou arg0reprezentací.Each format item in format is replaced with the string representation of arg0. Pokud položka formátu formatString zahrnuje a arg0 IFormattable implementujerozhraní,definujeformátování.arg0.ToString(formatString, provider)If the format item includes formatString and arg0 implements the IFormattable interface, then arg0.ToString(formatString, provider) defines the formatting. V opačném případě definuje formátování. arg0.ToString()Otherwise, arg0.ToString() defines the formatting.

Poznámky pro volající

V rozhraní .NET Core a v .NET Framework 4,0 StringBuilder a novějších verzích při vytváření instance objektu StringBuilder(Int32, Int32) voláním konstruktoru může být délka i kapacita StringBuilder instance větší než hodnota jejího MaxCapacity majetek.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. K tomu může dojít zejména při volání Append(String) metod a AppendFormat(String, Object) pro připojení malých řetězců.This can occur particularly when you call the Append(String) and AppendFormat(String, Object) methods to append small strings.

Viz také

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

Připojí řetězec vrácený zpracováním složeného formátovacího řetězce, který v této instanci obsahuje nula nebo více položek formátu.Appends the string returned by processing a composite format string, which contains zero or more format items, to this instance. Každá položka formátu je nahrazena řetězcovou reprezentací odpovídajícího argumentu v poli parametrů pomocí zadaného poskytovatele formátu.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

Parametry

provider
IFormatProvider IFormatProvider IFormatProvider IFormatProvider

Objekt, který poskytuje informace o formátování specifické pro jazykovou verzi.An object that supplies culture-specific formatting information.

format
String String String String

Složený řetězec formátu.A composite format string.

args
Object[]

Pole objektů, které se mají formátovatAn array of objects to format.

Návraty

Odkaz na tuto instanci po dokončení operace APPEND.A reference to this instance after the append operation has completed. Po operaci připojit tato instance obsahuje všechna data, která existovala před operací, s příponou kopie format , kde jakákoli specifikace formátu je nahrazena řetězcovou reprezentací odpovídajícího argumentu objektu.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.

Výjimky

Formát format je neplatný.format is invalid.

-nebo--or- Index položky formátu je menší než 0 (nula) nebo větší nebo roven délce args pole.The index of a format item is less than 0 (zero), or greater than or equal to the length of the args array.

Délka rozšířeného řetězce by překročila MaxCapacity.The length of the expanded string would exceed MaxCapacity.

Příklady

Následující příklad ukazuje AppendFormat metodu.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.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

Následující příklad definuje vlastní IFormatProvider implementaci s názvem CustomerFormatter , která formátuje číslo zákazníka pomocí spojovníků za čtvrtou a sedm číslicí.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. Je předána StringBuilder.AppendFormat(IFormatProvider, String, Object[]) metodě pro vytvoření řetězce, který obsahuje formátované číslo zákazníka a jméno zákazníka.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

Poznámky

Tato metoda používá funkci složeného formátování .NET Framework k převodu hodnoty objektu na jeho textovou reprezentaci a vložení této reprezentace do aktuálního StringBuilder objektu.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.

format Parametr se skládá z nuly nebo více běhů textu v kombinaci s nula nebo více indexovanými zástupnými symboly, které odpovídají objektům v seznamu parametrů této metody.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. Proces formátování nahradí každou položku formátu řetězcovou reprezentací odpovídajícího objektu.The formatting process replaces each format item with the string representation of the corresponding object.

Syntaxe položky formátu je následující:The syntax of a format item is as follows:

{index[,Length] [:formatString]}{index[,length][:formatString]}

Prvky v hranatých závorkách jsou volitelné.Elements in square brackets are optional. Následující tabulka popisuje jednotlivé prvky.The following table describes each element.

PrvekElement PopisDescription
indexindex Pozice s nulovým základem v seznamu parametrů objektu, který má být formátován.The zero-based position in the parameter list of the object to be formatted. Pokud je nullobjekt určený indexem , String.Emptypoložka formátu je nahrazena.If the object specified by index is null, the format item is replaced by String.Empty. Pokud na pozici indexu není žádný parametr, FormatException je vyvolána výjimka.If there is no parameter in the index position, a FormatException is thrown.
,Délka,length Minimální počet znaků v řetězcové reprezentaci parametru.The minimum number of characters in the string representation of the parameter. Pokud je kladné, je parametr zarovnán vpravo; Pokud je hodnota záporná, zůstane zarovnaná doleva.If positive, the parameter is right-aligned; if negative, it is left-aligned.
:formatString:formatString Standardní nebo vlastní řetězec formátu, který je podporován parametrem.A standard or custom format string that is supported by the parameter.

Poznámka

Pro standardní a vlastní řetězce formátu používané s hodnotami data a času naleznete v tématu Standardní řetězce formátu data a času a Vlastní řetězce formátu data a času.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. Pro standardní a vlastní řetězce formátu používané s číselnými hodnotami si přečtěte téma Standardní číselné formátovací řetězce a vlastní číselné formátovací řetězce.For the standard and custom format strings used with numeric values, see Standard Numeric Format Strings and Custom Numeric Format Strings. Standardní formátovací řetězce používané s výčty najdete v tématu výčtové řetězce formátu.For the standard format strings used with enumerations, see Enumeration Format Strings.

Parametr určuje implementaci, která může poskytnout informace o formátování pro objekty v args. provider IFormatProviderThe provider parameter specifies an IFormatProvider implementation that can provide formatting information for the objects in args. providermůže to být kterýkoli z následujících:provider can be any of the following:

Pokud je provider nullparametr, informace o poskytovateli formátu jsou získány z aktuální jazykové verze.If the provider parameter is null, format provider information is obtained from the current culture.

argspředstavuje objekty, které mají být formátovány.args represents the objects to be formatted. Každá položka formátu v format je nahrazena řetězcovou reprezentací odpovídajícího objektu v. argsEach format item in format is replaced with the string representation of the corresponding object in args. Pokud položka formátu formatString zahrnuje a odpovídající objekt v args args[index].ToString(formatString, provider) implementuje IFormattable rozhraní, definuje formátování.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. V opačném případě definuje formátování. args[index].ToString()Otherwise, args[index].ToString() defines the formatting.

Poznámky pro volající

V rozhraní .NET Core a v .NET Framework 4,0 StringBuilder a novějších verzích při vytváření instance objektu StringBuilder(Int32, Int32) voláním konstruktoru může být délka i kapacita StringBuilder instance větší než hodnota jejího MaxCapacity majetek.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. K tomu může dojít zejména při volání Append(String) metod a AppendFormat(String, Object) pro připojení malých řetězců.This can occur particularly when you call the Append(String) and AppendFormat(String, Object) methods to append small strings.

Viz také

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

Připojí řetězec vrácený zpracováním složeného formátovacího řetězce, který v této instanci obsahuje nula nebo více položek formátu.Appends the string returned by processing a composite format string, which contains zero or more format items, to this instance. Každá položka formátu je nahrazena řetězcovou reprezentací některého ze dvou argumentů.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

Parametry

format
String String String String

Složený řetězec formátu.A composite format string.

arg0
Object Object Object Object

První objekt pro formátování.The first object to format.

arg1
Object Object Object Object

Druhý objekt pro formátování.The second object to format.

Návraty

Odkaz na tuto instanci s format připojením.A reference to this instance with format appended. Každá položka formátu v format je nahrazena řetězcovou reprezentací odpovídajícího argumentu objektu.Each format item in format is replaced by the string representation of the corresponding object argument.

Výjimky

Formát format je neplatný.format is invalid.

-nebo--or- Index položky formátu je menší než 0 (nula) nebo větší než nebo rovno 2.The index of a format item is less than 0 (zero), or greater than or equal to 2.

Délka rozšířeného řetězce by překročila MaxCapacity.The length of the expanded string would exceed MaxCapacity.

Příklady

Následující příklad ukazuje AppendFormat metodu.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.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

Poznámky

Tato metoda používá funkci složeného formátování .NET Framework k převodu hodnoty objektu na jeho textovou reprezentaci a vložení této reprezentace do aktuálního StringBuilder objektu.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.

Parametr se skládá z nuly nebo více běhů textu v kombinaci s nula nebo více indexovanými zástupnými symboly, které jsou označovány jako arg0 položky arg1formátu, které odpovídají a, dva objekty v seznamu parametrů této metody. formatThe 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. Proces formátování nahradí každou položku formátu řetězcovou reprezentací odpovídajícího objektu.The formatting process replaces each format item with the string representation of the corresponding object.

Syntaxe položky formátu je následující:The syntax of a format item is as follows:

{index[,Length] [:formatString]}{index[,length][:formatString]}

Prvky v hranatých závorkách jsou volitelné.Elements in square brackets are optional. Následující tabulka popisuje jednotlivé prvky.The following table describes each element.

PrvekElement PopisDescription
indexindex Pozice s nulovým základem v seznamu parametrů objektu, který má být formátován.The zero-based position in the parameter list of the object to be formatted. Pokud je nullobjekt určený indexem , String.Emptypoložka formátu je nahrazena.If the object specified by index is null, the format item is replaced by String.Empty. Pokud na pozici indexu není žádný parametr, FormatException je vyvolána výjimka.If there is no parameter in the index position, a FormatException is thrown.
,Délka,length Minimální počet znaků v řetězcové reprezentaci parametru.The minimum number of characters in the string representation of the parameter. Pokud je kladné, je parametr zarovnán vpravo; Pokud je hodnota záporná, zůstane zarovnaná doleva.If positive, the parameter is right-aligned; if negative, it is left-aligned.
:formatString:formatString Standardní nebo vlastní řetězec formátu, který je podporován parametrem.A standard or custom format string that is supported by the parameter.

Poznámka

Pro standardní a vlastní řetězce formátu používané s hodnotami data a času naleznete v tématu Standardní řetězce formátu data a času a Vlastní řetězce formátu data a času.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. Pro standardní a vlastní řetězce formátu používané s číselnými hodnotami si přečtěte téma Standardní číselné formátovací řetězce a vlastní číselné formátovací řetězce.For the standard and custom format strings used with numeric values, see Standard Numeric Format Strings and Custom Numeric Format Strings. Standardní formátovací řetězce používané s výčty najdete v tématu výčtové řetězce formátu.For the standard format strings used with enumerations, see Enumeration Format Strings.

arg0a arg1 reprezentovat objekty, které mají být formátovány.arg0 and arg1 represent the objects to be formatted. Každá položka formátu v format je nahrazena řetězcovou reprezentací buď arg0 nebo arg1.Each format item in format is replaced with the string representation of either arg0 or arg1. Pokud položka formátu zahrnuje formatString a odpovídající objekt IFormattable implementuje rozhraní, argdefinuje x .ToString(formatString, provider) formátování, kde x je index argumentu.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. V opačném případě x .ToString() definuje formátování. argOtherwise, argx.ToString() defines the formatting.

Pokud je řetězec, ke format kterému je přiřazený, Děkujeme za váš darování {0: # # # #} plechovek v potravinách až k naší dobročinné organizaci. "If the string assigned to format is "Thank you for your donation of {0:####} cans of food to our charitable organization." a arg0 je celé číslo s hodnotou 10, návratová hodnota bude "Děkujeme za váš darování 10 plechovek v naší dobročinné organizaci."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."

Poznámky pro volající

V rozhraní .NET Core a v .NET Framework 4,0 StringBuilder a novějších verzích při vytváření instance objektu StringBuilder(Int32, Int32) voláním konstruktoru může být délka i kapacita StringBuilder instance větší než hodnota jejího MaxCapacity majetek.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. K tomu může dojít zejména při volání Append(String) metod a AppendFormat(String, Object) pro připojení malých řetězců.This can occur particularly when you call the Append(String) and AppendFormat(String, Object) methods to append small strings.

Viz také

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

Připojí řetězec vrácený zpracováním složeného formátovacího řetězce, který v této instanci obsahuje nula nebo více položek formátu.Appends the string returned by processing a composite format string, which contains zero or more format items, to this instance. Každá položka formátu je nahrazena řetězcovou reprezentací některého ze dvou argumentů pomocí zadaného poskytovatele formátu.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

Parametry

provider
IFormatProvider IFormatProvider IFormatProvider IFormatProvider

Objekt, který poskytuje informace o formátování specifické pro jazykovou verzi.An object that supplies culture-specific formatting information.

format
String String String String

Složený řetězec formátu.A composite format string.

arg0
Object Object Object Object

První objekt pro formátování.The first object to format.

arg1
Object Object Object Object

Druhý objekt pro formátování.The second object to format.

Návraty

Odkaz na tuto instanci po dokončení operace APPEND.A reference to this instance after the append operation has completed. Po operaci připojit tato instance obsahuje všechna data, která existovala před operací, s příponou kopie format , kde jakákoli specifikace formátu je nahrazena řetězcovou reprezentací odpovídajícího argumentu objektu.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.

Výjimky

Formát format je neplatný.format is invalid.

-nebo--or- Index položky formátu je menší než 0 (nula) nebo větší nebo roven 2 (dvou).The index of a format item is less than 0 (zero), or greater than or equal to 2 (two).

Délka rozšířeného řetězce by překročila MaxCapacity.The length of the expanded string would exceed MaxCapacity.

Příklady

Následující příklad používá AppendFormat(IFormatProvider, String, Object, Object) metodu k zobrazení času a dat teploty uložených v obecném Dictionary<TKey,TValue> objektu.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. Všimněte si, že formátovací řetězec má tři položky formátu, i když jsou pouze objekty, které mají být naformátované.Note that the format string has three format items, although there are only to objects to format. Důvodem je, že první objekt v seznamu (hodnota datum a čas) je použit dvěma položkami formátu: První položka formátu zobrazuje čas a druhá zobrazí datum.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

Poznámky

Tato metoda používá funkci složeného formátování .NET Framework k převodu hodnoty objektu na jeho textovou reprezentaci a vložení této reprezentace do aktuálního StringBuilder objektu.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.

format Parametr se skládá z nuly nebo více běhů textu v kombinaci s nula nebo více indexovanými zástupnými symboly, které odpovídají objektům v seznamu parametrů této metody.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. Proces formátování nahradí každou položku formátu řetězcovou reprezentací odpovídajícího objektu.The formatting process replaces each format item with the string representation of the corresponding object.

Syntaxe položky formátu je následující:The syntax of a format item is as follows:

{index[,Length] [:formatString]}{index[,length][:formatString]}

Prvky v hranatých závorkách jsou volitelné.Elements in square brackets are optional. Následující tabulka popisuje jednotlivé prvky.The following table describes each element.

PrvekElement PopisDescription
indexindex Pozice s nulovým základem v seznamu parametrů objektu, který má být formátován.The zero-based position in the parameter list of the object to be formatted. Pokud je nullobjekt určený indexem , String.Emptypoložka formátu je nahrazena.If the object specified by index is null, the format item is replaced by String.Empty. Pokud na pozici indexu není žádný parametr, FormatException je vyvolána výjimka.If there is no parameter in the index position, a FormatException is thrown.
,Délka,length Minimální počet znaků v řetězcové reprezentaci parametru.The minimum number of characters in the string representation of the parameter. Pokud je kladné, je parametr zarovnán vpravo; Pokud je hodnota záporná, zůstane zarovnaná doleva.If positive, the parameter is right-aligned; if negative, it is left-aligned.
:formatString:formatString Standardní nebo vlastní řetězec formátu, který je podporován parametrem.A standard or custom format string that is supported by the parameter.

Poznámka

Pro standardní a vlastní řetězce formátu používané s hodnotami data a času naleznete v tématu Standardní řetězce formátu data a času a Vlastní řetězce formátu data a času.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. Pro standardní a vlastní řetězce formátu používané s číselnými hodnotami si přečtěte téma Standardní číselné formátovací řetězce a vlastní číselné formátovací řetězce.For the standard and custom format strings used with numeric values, see Standard Numeric Format Strings and Custom Numeric Format Strings. Standardní formátovací řetězce používané s výčty najdete v tématu výčtové řetězce formátu.For the standard format strings used with enumerations, see Enumeration Format Strings.

Parametr určuje implementaci, která může poskytnout informace o formátování pro arg0 a arg1. provider IFormatProviderThe provider parameter specifies an IFormatProvider implementation that can provide formatting information for arg0 and arg1. providermůže to být kterýkoli z následujících:provider can be any of the following:

  • CultureInfo Objekt, který poskytuje informace o formátování specifické pro jazykovou verzi.A CultureInfo object that provides culture-specific formatting information.

  • Objekt, který poskytuje informace o formátování specifické pro jazykovou arg1 verzi pro arg0 nebo, pokud se jedná o číselné hodnoty. NumberFormatInfoA NumberFormatInfo object that provides culture-specific formatting information for arg0 or arg1 if they are numeric values.

  • Objekt, který poskytuje informace o formátování specifické pro jazykovou arg1 verzi pro arg0 nebo, pokud se jedná o hodnoty data a času. DateTimeFormatInfoA DateTimeFormatInfo object that provides culture-specific formatting information for arg0 or arg1 if they are date and time values.

  • Vlastní IFormatProvider implementace, která poskytuje informace o formátování arg0 pro arg1a.A custom IFormatProvider implementation that provides formatting information for arg0 and arg1. Obvykle taková implementace implementuje ICustomFormatter i rozhraní.Typically, such an implementation also implements the ICustomFormatter interface.

Pokud je provider nullparametr, informace o poskytovateli formátu jsou získány z aktuální jazykové verze.If the provider parameter is null, format provider information is obtained from the current culture.

arg0a arg1 reprezentovat objekty, které mají být formátovány.arg0 and arg1 represent the objects to be formatted. Každá položka formátu v format je nahrazena řetězcovou reprezentací objektu, který má odpovídající index.Each format item in format is replaced with the string representation of the object that has the corresponding index. Pokud položka formátu zahrnuje formatString a odpovídající argument IFormattable implementuje rozhraní ToString(formatString, provider) , pak metoda argumentu definuje formátování.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. V opačném případě ToString() metoda argumentu definuje formátování.Otherwise, the argument's ToString() method defines the formatting.

Poznámky pro volající

Profilace .NET Core a v .NET Framework 4,0 StringBuilder a novějších verzích při vytváření instance objektu StringBuilder(Int32, Int32) voláním konstruktoru může být délka i kapacita StringBuilder instance větší než hodnota jejího MaxCapacity majetek.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. K tomu může dojít zejména při volání Append(String) metod a AppendFormat(String, Object) pro připojení malých řetězců.This can occur particularly when you call the Append(String) and AppendFormat(String, Object) methods to append small strings.

Viz také

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

Připojí řetězec vrácený zpracováním složeného formátovacího řetězce, který v této instanci obsahuje nula nebo více položek formátu.Appends the string returned by processing a composite format string, which contains zero or more format items, to this instance. Každá položka formátu je nahrazena řetězcovou reprezentací jednoho ze tří argumentů.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

Parametry

format
String String String String

Složený řetězec formátu.A composite format string.

arg0
Object Object Object Object

První objekt pro formátování.The first object to format.

arg1
Object Object Object Object

Druhý objekt pro formátování.The second object to format.

arg2
Object Object Object Object

Třetí objekt pro formátování.The third object to format.

Návraty

Odkaz na tuto instanci s format připojením.A reference to this instance with format appended. Každá položka formátu v format je nahrazena řetězcovou reprezentací odpovídajícího argumentu objektu.Each format item in format is replaced by the string representation of the corresponding object argument.

Výjimky

Formát format je neplatný.format is invalid.

-nebo--or- Index položky formátu je menší než 0 (nula) nebo větší nebo roven 3.The index of a format item is less than 0 (zero), or greater than or equal to 3.

Délka rozšířeného řetězce by překročila MaxCapacity.The length of the expanded string would exceed MaxCapacity.

Příklady

Následující příklad ukazuje AppendFormat metodu.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.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

Poznámky

Tato metoda používá funkci složeného formátování .NET Framework k převodu hodnoty objektu na jeho textovou reprezentaci a vložení této reprezentace do aktuálního StringBuilder objektu.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.

Parametr se skládá z nuly nebo více běhů textu v kombinaci s nula nebo více indexovanými zástupnými symboly, které jsou označovány jako arg0 položky arg2formátu, které odpovídají, objektům v seznamu parametrů této metody. formatThe 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. Proces formátování nahradí každou položku formátu řetězcovou reprezentací odpovídajícího objektu.The formatting process replaces each format item with the string representation of the corresponding object.

Syntaxe položky formátu je následující:The syntax of a format item is as follows:

{index[,Length] [:formatString]}{index[,length][:formatString]}

Prvky v hranatých závorkách jsou volitelné.Elements in square brackets are optional. Následující tabulka popisuje jednotlivé prvky.The following table describes each element.

PrvekElement PopisDescription
indexindex Pozice s nulovým základem v seznamu parametrů objektu, který má být formátován.The zero-based position in the parameter list of the object to be formatted. Pokud je nullobjekt určený indexem , String.Emptypoložka formátu je nahrazena.If the object specified by index is null, the format item is replaced by String.Empty. Pokud na pozici indexu není žádný parametr, FormatException je vyvolána výjimka.If there is no parameter in the index position, a FormatException is thrown.
,Délka,length Minimální počet znaků v řetězcové reprezentaci parametru.The minimum number of characters in the string representation of the parameter. Pokud je kladné, je parametr zarovnán vpravo; Pokud je hodnota záporná, zůstane zarovnaná doleva.If positive, the parameter is right-aligned; if negative, it is left-aligned.
:formatString:formatString Standardní nebo vlastní řetězec formátu, který je podporován parametrem.A standard or custom format string that is supported by the parameter.

Poznámka

Pro standardní a vlastní řetězce formátu používané s hodnotami data a času naleznete v tématu Standardní řetězce formátu data a času a Vlastní řetězce formátu data a času.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. Pro standardní a vlastní řetězce formátu používané s číselnými hodnotami si přečtěte téma Standardní číselné formátovací řetězce a vlastní číselné formátovací řetězce.For the standard and custom format strings used with numeric values, see Standard Numeric Format Strings and Custom Numeric Format Strings. Standardní formátovací řetězce používané s výčty najdete v tématu výčtové řetězce formátu.For the standard format strings used with enumerations, see Enumeration Format Strings.

arg0, arg1 aarg2 reprezentovat objekty, které mají být formátovány.arg0, arg1, and arg2 represent the objects to be formatted. Každá položka formátu v format je nahrazena řetězcovou reprezentací buď arg0, arg1nebo arg2, v závislosti na indexu položky formátu.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. Pokud položka formatString formátu zahrnuje a odpovídající objekt v IFormattable arg args implementuje rozhraní, definuje x .ToString(formatString, null) formátování, kde x je index argumentu.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. V opačném případě x .ToString() definuje formátování. argOtherwise, argx.ToString() defines the formatting.

Pokud je řetězec, ke format kterému je přiřazený, Děkujeme za váš darování {0: # # # #} plechovek v potravinách až k naší dobročinné organizaci. "If the string assigned to format is "Thank you for your donation of {0:####} cans of food to our charitable organization." a arg0 je celé číslo s hodnotou 10, návratová hodnota bude "Děkujeme za váš darování 10 plechovek v naší dobročinné organizaci."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."

Poznámky pro volající

V rozhraní .NET Core a v .NET Framework 4,0 StringBuilder a novějších verzích při vytváření instance objektu StringBuilder(Int32, Int32) voláním konstruktoru může být délka i kapacita StringBuilder instance větší než hodnota jejího MaxCapacity majetek.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. K tomu může dojít zejména při volání Append(String) metod a AppendFormat(String, Object) pro připojení malých řetězců.This can occur particularly when you call the Append(String) and AppendFormat(String, Object) methods to append small strings.

Viz také

Platí pro