StringBuilder.AppendFormat Metode

Definisi

Menambahkan string yang dikembalikan dengan memproses string format komposit, yang berisi nol atau lebih item format, ke instans ini. Setiap item format digantikan oleh representasi string dari argumen objek yang sesuai.

Overload

AppendFormat(String, Object, Object)

Menambahkan string yang dikembalikan dengan memproses string format komposit, yang berisi nol atau lebih item format, ke instans ini. Setiap item format digantikan oleh representasi string dari salah satu dari dua argumen.

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

Menambahkan string yang dikembalikan dengan memproses string format komposit, yang berisi nol atau lebih item format, ke instans ini. Setiap item format digantikan oleh representasi string dari salah satu dari tiga argumen menggunakan penyedia format tertentu.

AppendFormat(String, Object, Object, Object)

Menambahkan string yang dikembalikan dengan memproses string format komposit, yang berisi nol atau lebih item format, ke instans ini. Setiap item format digantikan oleh representasi string dari salah satu dari tiga argumen.

AppendFormat(IFormatProvider, String, Object, Object)

Menambahkan string yang dikembalikan dengan memproses string format komposit, yang berisi nol atau lebih item format, ke instans ini. Setiap item format digantikan oleh representasi string dari salah satu dari dua argumen menggunakan penyedia format tertentu.

AppendFormat(IFormatProvider, CompositeFormat, ReadOnlySpan<Object>)

Menambahkan string yang dikembalikan dengan memproses string format komposit, yang berisi nol atau lebih item format, ke instans ini. Setiap item format digantikan oleh representasi string dari salah satu argumen menggunakan penyedia format tertentu.

AppendFormat(String, Object)

Menambahkan string yang dikembalikan dengan memproses string format komposit, yang berisi nol atau lebih item format, ke instans ini. Setiap item format digantikan oleh representasi string dari satu argumen.

AppendFormat(IFormatProvider, String, Object[])

Menambahkan string yang dikembalikan dengan memproses string format komposit, yang berisi nol atau lebih item format, ke instans ini. Setiap item format digantikan oleh representasi string argumen terkait dalam array parameter menggunakan penyedia format tertentu.

AppendFormat(IFormatProvider, String, Object)

Menambahkan string yang dikembalikan dengan memproses string format komposit, yang berisi nol atau lebih item format, ke instans ini. Setiap item format digantikan oleh representasi string dari satu argumen menggunakan penyedia format tertentu.

AppendFormat(String, Object[])

Menambahkan string yang dikembalikan dengan memproses string format komposit, yang berisi nol atau lebih item format, ke instans ini. Setiap item format digantikan oleh representasi string dari argumen yang sesuai dalam array parameter.

AppendFormat(IFormatProvider, CompositeFormat, Object[])

Menambahkan string yang dikembalikan dengan memproses string format komposit, yang berisi nol atau lebih item format, ke instans ini. Setiap item format digantikan oleh representasi string dari salah satu argumen menggunakan penyedia format tertentu.

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

Menambahkan string yang dikembalikan dengan memproses string format komposit, yang berisi nol atau lebih item format, ke instans ini. Setiap item format digantikan oleh representasi string dari salah satu argumen menggunakan penyedia format tertentu.

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

Menambahkan string yang dikembalikan dengan memproses string format komposit, yang berisi nol atau lebih item format, ke instans ini. Setiap item format digantikan oleh representasi string dari salah satu argumen menggunakan penyedia format tertentu.

AppendFormat<TArg0>(IFormatProvider, CompositeFormat, TArg0)

Menambahkan string yang dikembalikan dengan memproses string format komposit, yang berisi nol atau lebih item format, ke instans ini. Setiap item format digantikan oleh representasi string dari salah satu argumen menggunakan penyedia format tertentu.

AppendFormat(String, Object, Object)

Sumber:
StringBuilder.cs
Sumber:
StringBuilder.cs
Sumber:
StringBuilder.cs

Menambahkan string yang dikembalikan dengan memproses string format komposit, yang berisi nol atau lebih item format, ke instans ini. Setiap item format digantikan oleh representasi string dari salah satu dari dua argumen.

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

Parameter

format
String

String format komposit.

arg0
Object

Objek pertama yang diformat.

arg1
Object

Objek kedua yang akan diformat.

Mengembalikan

Referensi ke instans ini dengan format ditambahkan. Setiap item format di format digantikan oleh representasi string dari argumen objek yang sesuai.

Pengecualian

formatadalah null.

format tidak valid.

-atau-

Indeks item format kurang dari 0 (nol), atau lebih besar dari atau sama dengan 2.

Panjang string yang diperluas akan melebihi MaxCapacity.

Contoh

Contoh berikut menunjukkan AppendFormat metode .

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
*/
open System.Text
open System.Globalization

let sb = StringBuilder()

let show (sbs: StringBuilder) =
    printfn $"{sbs}"
    sb.Length <- 0

let var1 = 111
let var2 = 2.22f
let var3 = "abcd"
let var4: obj[] = [| 3; 4.4; 'X' |]

printfn "StringBuilder.AppendFormat method:"
sb.AppendFormat("1) {0}", var1) |> ignore
show sb
sb.AppendFormat("2) {0}, {1}", var1, var2) |> ignore
show sb
sb.AppendFormat("3) {0}, {1}, {2}", var1, var2, var3) |> ignore
show sb
sb.AppendFormat("4) {0}, {1}, {2}", var4) |> ignore
show sb
let ci = CultureInfo("es-ES", true)
sb.AppendFormat(ci, "5) {0}", var2) |> ignore
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
Imports System.Text
Imports System.Globalization

Class Sample
   Private Shared sb As New StringBuilder()

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

Keterangan

Metode ini menggunakan fitur pemformatan komposit dari .NET Framework untuk mengonversi nilai objek ke representasi teksnya dan menyematkan representasi tersebut di objek saat iniStringBuilder.

Parameter format terdiri dari nol atau lebih eksekusi teks yang diindeks dengan nol atau lebih tempat penampung terindeks, yang disebut item format, yang sesuai dengan arg0 dan arg1, dua objek dalam daftar parameter metode ini. Proses pemformatan menggantikan setiap item format dengan representasi string objek terkait.

Sintaks item format adalah sebagai berikut:

{index[,length][:formatString]}

Elemen dalam tanda kurung siku bersifat opsional. Tabel berikut ini menjelaskan setiap elemen.

Elemen Deskripsi
indeks Posisi berbasis nol dalam daftar parameter objek yang akan diformat. Jika objek yang ditentukan oleh indeks adalah null, item format digantikan oleh String.Empty. Jika tidak ada parameter dalam posisi indeks , akan FormatException dilemparkan.
,length Jumlah minimum karakter dalam representasi string parameter. Jika positif, parameter diratakan dengan kanan; jika negatif, sejajar kiri.
:formatString String format standar atau kustom yang didukung oleh parameter .

Catatan

Untuk string format standar dan kustom yang digunakan dengan nilai tanggal dan waktu, lihat String Format Tanggal dan Waktu Standar serta String Format Tanggal dan Waktu Kustom. Untuk string format standar dan kustom yang digunakan dengan nilai numerik, lihat String Format Numerik Standar dan String Format Numerik Kustom. Untuk string format standar yang digunakan dengan enumerasi, lihat String Format Enumerasi.

arg0 dan arg1 mewakili objek yang akan diformat. Setiap item format di format diganti dengan representasi string baik arg0 atau arg1. Jika item format menyertakan formatString dan objek yang sesuai mengimplementasikan IFormattable antarmuka, maka argx.ToString(formatString, provider) menentukan pemformatan, di mana x adalah indeks argumen. Jika tidak, argx.ToString() menentukan pemformatan.

Jika string yang ditetapkan adalah format "Terima kasih atas sumbangan Anda atas kaleng makanan {0:###} kepada organisasi amal kami." dan arg0 merupakan bilangan bulat dengan nilai 10, nilai yang dikembalikan adalah "Terima kasih atas sumbangan 10 kaleng makanan untuk organisasi amal kami."

Catatan Bagi Pemanggil

Di .NET Core dan di .NET Framework 4.0 dan versi yang lebih baru, ketika Anda membuat StringBuilder instans objek dengan memanggil StringBuilder(Int32, Int32) konstruktor, panjang dan kapasitas StringBuilder instans dapat tumbuh di luar nilai propertinyaMaxCapacity. Ini dapat terjadi terutama ketika Anda memanggil Append(String) metode dan AppendFormat(String, Object) untuk menambahkan string kecil.

Lihat juga

Berlaku untuk

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

Sumber:
StringBuilder.cs
Sumber:
StringBuilder.cs
Sumber:
StringBuilder.cs

Menambahkan string yang dikembalikan dengan memproses string format komposit, yang berisi nol atau lebih item format, ke instans ini. Setiap item format digantikan oleh representasi string dari salah satu dari tiga argumen menggunakan penyedia format tertentu.

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

Parameter

provider
IFormatProvider

Objek yang memasok informasi pemformatan khusus budaya.

format
String

String format komposit.

arg0
Object

Objek pertama yang diformat.

arg1
Object

Objek kedua yang akan diformat.

arg2
Object

Objek ketiga yang akan diformat.

Mengembalikan

Referensi ke instans ini setelah operasi penampan selesai. Setelah operasi penamangan, instans ini berisi data apa pun yang ada sebelum operasi, diakhiri oleh salinan format di mana spesifikasi format apa pun digantikan oleh representasi string dari argumen objek yang sesuai.

Pengecualian

formatadalah null.

format tidak valid.

-atau-

Indeks item format kurang dari 0 (nol), atau lebih besar dari atau sama dengan 3 (tiga).

Panjang string yang diperluas akan melebihi MaxCapacity.

Contoh

Contoh berikut menggunakan AppendFormat(IFormatProvider, String, Object, Object, Object) metode untuk mengilustrasikan hasil operasi Boolean dengan nilai bilangan And bulat. Perhatikan bahwa string format menyertakan enam item format, tetapi metode ini hanya memiliki tiga item dalam daftar argumennya, karena setiap item diformat dengan dua cara berbeda.

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)
open System
open System.Globalization
open System.Text

let rnd = Random()
let culture = CultureInfo.CreateSpecificCulture "fr-FR"
let sb = StringBuilder()

let formatString =
    "    {0,12:N0} ({0,8:X8})\nAnd {1,12:N0} ({1,8:X8})\n  = {2,12:N0} ({2,8:X8})\n"

for _ = 0 to 2 do
    let value1 = rnd.Next()
    let value2 = rnd.Next()

    sb
        .AppendFormat(culture, formatString, value1, value2, value1 &&& value2)
        .AppendLine()
    |> ignore

printfn $"{sb}"

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

Keterangan

Metode ini menggunakan fitur pemformatan komposit dari .NET Framework untuk mengonversi nilai objek ke representasi teksnya dan menyematkan representasi tersebut di objek saat iniStringBuilder.

Parameter format terdiri dari nol atau lebih eksekusi teks yang diindeks dengan nol atau lebih tempat penampung terindeks, yang disebut item format, yang sesuai dengan objek dalam daftar parameter metode ini. Proses pemformatan menggantikan setiap item format dengan representasi string objek terkait.

Sintaks item format adalah sebagai berikut:

{index[,length][:formatString]}

Elemen dalam tanda kurung siku bersifat opsional. Tabel berikut ini menjelaskan setiap elemen.

Elemen Deskripsi
indeks Posisi berbasis nol dalam daftar parameter objek yang akan diformat. Jika objek yang ditentukan oleh indeks adalah null, item format digantikan oleh String.Empty. Jika tidak ada parameter dalam posisi indeks , akan FormatException dilemparkan.
,length Jumlah minimum karakter dalam representasi string parameter. Jika positif, parameter diratakan dengan kanan; jika negatif, sejajar kiri.
:formatString String format standar atau kustom yang didukung oleh parameter .

Catatan

Untuk string format standar dan kustom yang digunakan dengan nilai tanggal dan waktu, lihat String Format Tanggal dan Waktu Standar serta String Format Tanggal dan Waktu Kustom. Untuk string format standar dan kustom yang digunakan dengan nilai numerik, lihat String Format Numerik Standar dan String Format Numerik Kustom. Untuk string format standar yang digunakan dengan enumerasi, lihat String Format Enumerasi.

Parameter provider menentukan IFormatProvider implementasi yang dapat memberikan informasi pemformatan untuk arg0 dan arg1. provider bisa jadi salah satu dari hal berikut:

  • Objek CultureInfo yang menyediakan informasi pemformatan khusus budaya.

  • Objek NumberFormatInfo yang menyediakan informasi pemformatan khusus budaya untuk arg0 atau arg1 jika merupakan nilai numerik.

  • Objek DateTimeFormatInfo yang menyediakan informasi pemformatan khusus budaya untuk arg0, , arg1atau arg2 jika merupakan nilai tanggal dan waktu.

  • Implementasi kustom IFormatProvider yang menyediakan informasi pemformatan untuk arg0, , arg1dan arg2. Biasanya, implementasi seperti itu ICustomFormatter juga mengimplementasikan antarmuka.

provider Jika parameternya adalah null, informasi penyedia format diperoleh dari budaya saat ini.

arg0, arg1, dan arg2 mewakili objek yang akan diformat. Setiap item format di format diganti dengan representasi string objek yang memiliki indeks yang sesuai. Jika item format menyertakan formatString dan argumen yang sesuai mengimplementasikan IFormattable antarmuka, maka metode argumen ToString(formatString, provider) menentukan pemformatan. Jika tidak, metode argumen ToString() menentukan pemformatan.

Catatan Bagi Pemanggil

Di .NET Core dan di .NET Framework 4.0 dan versi yang lebih baru, ketika Anda membuat StringBuilder instans objek dengan memanggil StringBuilder(Int32, Int32) konstruktor, panjang dan kapasitas StringBuilder instans dapat tumbuh di luar nilai propertinyaMaxCapacity. Ini dapat terjadi terutama ketika Anda memanggil Append(String) metode dan AppendFormat(String, Object) untuk menambahkan string kecil.

Lihat juga

Berlaku untuk

AppendFormat(String, Object, Object, Object)

Sumber:
StringBuilder.cs
Sumber:
StringBuilder.cs
Sumber:
StringBuilder.cs

Menambahkan string yang dikembalikan dengan memproses string format komposit, yang berisi nol atau lebih item format, ke instans ini. Setiap item format digantikan oleh representasi string dari salah satu dari tiga argumen.

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

Parameter

format
String

String format komposit.

arg0
Object

Objek pertama yang diformat.

arg1
Object

Objek kedua yang akan diformat.

arg2
Object

Objek ketiga yang akan diformat.

Mengembalikan

Referensi ke instans ini dengan format ditambahkan. Setiap item format di format digantikan oleh representasi string dari argumen objek yang sesuai.

Pengecualian

formatadalah null.

format tidak valid.

-atau-

Indeks item format kurang dari 0 (nol), atau lebih besar dari atau sama dengan 3.

Panjang string yang diperluas akan melebihi MaxCapacity.

Contoh

Contoh berikut menunjukkan AppendFormat metode .

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
*/
open System.Text
open System.Globalization

let sb = StringBuilder()

let show (sbs: StringBuilder) =
    printfn $"{sbs}"
    sb.Length <- 0

let var1 = 111
let var2 = 2.22f
let var3 = "abcd"
let var4: obj[] = [| 3; 4.4; 'X' |]

printfn "StringBuilder.AppendFormat method:"
sb.AppendFormat("1) {0}", var1) |> ignore
show sb
sb.AppendFormat("2) {0}, {1}", var1, var2) |> ignore
show sb
sb.AppendFormat("3) {0}, {1}, {2}", var1, var2, var3) |> ignore
show sb
sb.AppendFormat("4) {0}, {1}, {2}", var4) |> ignore
show sb
let ci = CultureInfo("es-ES", true)
sb.AppendFormat(ci, "5) {0}", var2) |> ignore
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
Imports System.Text
Imports System.Globalization

Class Sample
   Private Shared sb As New StringBuilder()

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

Keterangan

Metode ini menggunakan fitur pemformatan komposit dari .NET Framework untuk mengonversi nilai objek ke representasi teksnya dan menyematkan representasi tersebut di objek saat iniStringBuilder.

Parameter format terdiri dari nol atau lebih eksekusi teks yang diindeks dengan nol atau lebih tempat penampung terindeks, yang disebut item format, yang sesuai dengan arg0 melalui arg2, objek dalam daftar parameter metode ini. Proses pemformatan menggantikan setiap item format dengan representasi string objek terkait.

Sintaks item format adalah sebagai berikut:

{index[,length][:formatString]}

Elemen dalam tanda kurung siku bersifat opsional. Tabel berikut ini menjelaskan setiap elemen.

Elemen Deskripsi
indeks Posisi berbasis nol dalam daftar parameter objek yang akan diformat. Jika objek yang ditentukan oleh indeks adalah null, item format digantikan oleh String.Empty. Jika tidak ada parameter dalam posisi indeks , akan FormatException dilemparkan.
,length Jumlah minimum karakter dalam representasi string parameter. Jika positif, parameter diratakan dengan kanan; jika negatif, sejajar kiri.
:formatString String format standar atau kustom yang didukung oleh parameter .

Catatan

Untuk string format standar dan kustom yang digunakan dengan nilai tanggal dan waktu, lihat String Format Tanggal dan Waktu Standar serta String Format Tanggal dan Waktu Kustom. Untuk string format standar dan kustom yang digunakan dengan nilai numerik, lihat String Format Numerik Standar dan String Format Numerik Kustom. Untuk string format standar yang digunakan dengan enumerasi, lihat String Format Enumerasi.

arg0, arg1, dan arg2 mewakili objek yang akan diformat. Setiap item format di format diganti dengan representasi string dari arg0, , arg1atau arg2, tergantung pada indeks item format. Jika item format menyertakan formatString dan objek terkait dalam args mengimplementasikan IFormattable antarmuka, maka argx.ToString(formatString, null) menentukan pemformatan, di mana x adalah indeks argumen. Jika tidak, argx.ToString() menentukan pemformatan.

Jika string yang ditetapkan adalah format "Terima kasih atas sumbangan Anda atas kaleng makanan {0:###} kepada organisasi amal kami." dan arg0 merupakan bilangan bulat dengan nilai 10, nilai yang dikembalikan adalah "Terima kasih atas sumbangan 10 kaleng makanan untuk organisasi amal kami."

Catatan Bagi Pemanggil

Di .NET Core dan di .NET Framework 4.0 dan versi yang lebih baru, ketika Anda membuat StringBuilder instans objek dengan memanggil StringBuilder(Int32, Int32) konstruktor, panjang dan kapasitas StringBuilder instans dapat tumbuh di luar nilai propertinyaMaxCapacity. Ini dapat terjadi terutama ketika Anda memanggil Append(String) metode dan AppendFormat(String, Object) untuk menambahkan string kecil.

Lihat juga

Berlaku untuk

AppendFormat(IFormatProvider, String, Object, Object)

Sumber:
StringBuilder.cs
Sumber:
StringBuilder.cs
Sumber:
StringBuilder.cs

Menambahkan string yang dikembalikan dengan memproses string format komposit, yang berisi nol atau lebih item format, ke instans ini. Setiap item format digantikan oleh representasi string dari salah satu dari dua argumen menggunakan penyedia format tertentu.

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

Parameter

provider
IFormatProvider

Objek yang memasok informasi pemformatan khusus budaya.

format
String

String format komposit.

arg0
Object

Objek pertama yang diformat.

arg1
Object

Objek kedua yang akan diformat.

Mengembalikan

Referensi ke instans ini setelah operasi penampan selesai. Setelah operasi penamangan, instans ini berisi data apa pun yang ada sebelum operasi, diakhiri oleh salinan format di mana spesifikasi format apa pun digantikan oleh representasi string dari argumen objek yang sesuai.

Pengecualian

formatadalah null.

format tidak valid.

-atau-

Indeks item format kurang dari 0 (nol), atau lebih besar dari atau sama dengan 2 (dua).

Panjang string yang diperluas akan melebihi MaxCapacity.

Contoh

Contoh berikut menggunakan AppendFormat(IFormatProvider, String, Object, Object) metode untuk menampilkan data waktu dan suhu yang disimpan dalam objek generik Dictionary<TKey,TValue> . Perhatikan bahwa string format memiliki tiga item format, meskipun hanya ada objek untuk diformat. Ini karena objek pertama dalam daftar (nilai tanggal dan waktu) digunakan oleh dua item format: Item format pertama menampilkan waktu, dan yang kedua menampilkan tanggal.

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
open System
open System.Collections.Generic
open System.Globalization
open System.Text

let culture = CultureInfo "en-US"
let sb = StringBuilder()
let temperatureInfo = Dictionary<DateTime, Double>()
temperatureInfo.Add(DateTime(2010, 6, 1, 14, 0, 0), 87.46)
temperatureInfo.Add(DateTime(2010, 12, 1, 10, 0, 0), 36.81)

sb.AppendLine "Temperature Information:\n" |> ignore

for item in temperatureInfo do
    sb.AppendFormat(culture, "Temperature at {0,8:t} on {0,9:d}: {1,5:N1}°F\n", item.Key, item.Value)
    |> ignore

printfn $"{sb}"

// 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

Keterangan

Metode ini menggunakan fitur pemformatan komposit dari .NET Framework untuk mengonversi nilai objek ke representasi teksnya dan menyematkan representasi tersebut di objek saat iniStringBuilder.

Parameter format terdiri dari nol atau lebih eksekusi teks yang diindeks dengan nol atau lebih tempat penampung terindeks, yang disebut item format, yang sesuai dengan objek dalam daftar parameter metode ini. Proses pemformatan menggantikan setiap item format dengan representasi string objek terkait.

Sintaks item format adalah sebagai berikut:

{index[,length][:formatString]}

Elemen dalam tanda kurung siku bersifat opsional. Tabel berikut ini menjelaskan setiap elemen.

Elemen Deskripsi
indeks Posisi berbasis nol dalam daftar parameter objek yang akan diformat. Jika objek yang ditentukan oleh indeks adalah null, item format digantikan oleh String.Empty. Jika tidak ada parameter dalam posisi indeks , akan FormatException dilemparkan.
,length Jumlah minimum karakter dalam representasi string parameter. Jika positif, parameter diratakan dengan kanan; jika negatif, sejajar kiri.
:formatString String format standar atau kustom yang didukung oleh parameter .

Catatan

Untuk string format standar dan kustom yang digunakan dengan nilai tanggal dan waktu, lihat String Format Tanggal dan Waktu Standar serta String Format Tanggal dan Waktu Kustom. Untuk string format standar dan kustom yang digunakan dengan nilai numerik, lihat String Format Numerik Standar dan String Format Numerik Kustom. Untuk string format standar yang digunakan dengan enumerasi, lihat String Format Enumerasi.

Parameter provider menentukan IFormatProvider implementasi yang dapat memberikan informasi pemformatan untuk arg0 dan arg1. provider bisa jadi salah satu dari hal berikut:

  • Objek CultureInfo yang menyediakan informasi pemformatan khusus budaya.

  • Objek NumberFormatInfo yang menyediakan informasi pemformatan khusus budaya untuk arg0 atau arg1 jika merupakan nilai numerik.

  • Objek DateTimeFormatInfo yang menyediakan informasi pemformatan khusus budaya untuk arg0 atau arg1 jika merupakan nilai tanggal dan waktu.

  • Implementasi kustom IFormatProvider yang menyediakan informasi pemformatan untuk arg0 dan arg1. Biasanya, implementasi seperti itu ICustomFormatter juga mengimplementasikan antarmuka.

provider Jika parameternya adalah null, informasi penyedia format diperoleh dari budaya saat ini.

arg0 dan arg1 mewakili objek yang akan diformat. Setiap item format di format diganti dengan representasi string objek yang memiliki indeks yang sesuai. Jika item format menyertakan formatString dan argumen yang sesuai mengimplementasikan IFormattable antarmuka, maka metode argumen ToString(formatString, provider) menentukan pemformatan. Jika tidak, metode argumen ToString() menentukan pemformatan.

Catatan Bagi Pemanggil

IIn .NET Core dan dalam versi .NET Framework 4.0 dan yang lebih baru, ketika Anda membuat StringBuilder instans objek dengan memanggil StringBuilder(Int32, Int32) konstruktor, panjang dan kapasitas StringBuilder instans dapat tumbuh di luar nilai propertinyaMaxCapacity. Ini dapat terjadi terutama ketika Anda memanggil Append(String) metode dan AppendFormat(String, Object) untuk menambahkan string kecil.

Lihat juga

Berlaku untuk

AppendFormat(IFormatProvider, CompositeFormat, ReadOnlySpan<Object>)

Sumber:
StringBuilder.cs
Sumber:
StringBuilder.cs

Menambahkan string yang dikembalikan dengan memproses string format komposit, yang berisi nol atau lebih item format, ke instans ini. Setiap item format digantikan oleh representasi string dari salah satu argumen menggunakan penyedia format tertentu.

public:
 System::Text::StringBuilder ^ AppendFormat(IFormatProvider ^ provider, System::Text::CompositeFormat ^ format, ReadOnlySpan<System::Object ^> args);
public System.Text.StringBuilder AppendFormat (IFormatProvider? provider, System.Text.CompositeFormat format, ReadOnlySpan<object?> args);
member this.AppendFormat : IFormatProvider * System.Text.CompositeFormat * ReadOnlySpan<obj> -> System.Text.StringBuilder
Public Function AppendFormat (provider As IFormatProvider, format As CompositeFormat, args As ReadOnlySpan(Of Object)) As StringBuilder

Parameter

provider
IFormatProvider

Objek yang memasok informasi pemformatan khusus budaya.

args
ReadOnlySpan<Object>

Rentang objek untuk diformat.

Mengembalikan

Referensi ke instans ini setelah operasi penampan selesai.

Pengecualian

formatadalah null.

Indeks item format lebih besar dari atau sama dengan jumlah argumen yang disediakan.

Berlaku untuk

AppendFormat(String, Object)

Sumber:
StringBuilder.cs
Sumber:
StringBuilder.cs
Sumber:
StringBuilder.cs

Menambahkan string yang dikembalikan dengan memproses string format komposit, yang berisi nol atau lebih item format, ke instans ini. Setiap item format digantikan oleh representasi string dari satu argumen.

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

Parameter

format
String

String format komposit.

arg0
Object

Objek yang akan diformat.

Mengembalikan

Referensi ke instans ini dengan format ditambahkan. Setiap item format di format digantikan oleh representasi string .arg0

Pengecualian

formatadalah null.

format tidak valid.

-atau-

Indeks item format kurang dari 0 (nol), atau lebih besar dari atau sama dengan 1.

Panjang string yang diperluas akan melebihi MaxCapacity.

Contoh

Contoh berikut menunjukkan AppendFormat metode .

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
*/
open System.Text
open System.Globalization

let sb = StringBuilder()

let show (sbs: StringBuilder) =
    printfn $"{sbs}"
    sb.Length <- 0

let var1 = 111
let var2 = 2.22f
let var3 = "abcd"
let var4: obj[] = [| 3; 4.4; 'X' |]

printfn "StringBuilder.AppendFormat method:"
sb.AppendFormat("1) {0}", var1) |> ignore
show sb
sb.AppendFormat("2) {0}, {1}", var1, var2) |> ignore
show sb
sb.AppendFormat("3) {0}, {1}, {2}", var1, var2, var3) |> ignore
show sb
sb.AppendFormat("4) {0}, {1}, {2}", var4) |> ignore
show sb
let ci = CultureInfo("es-ES", true)
sb.AppendFormat(ci, "5) {0}", var2) |> ignore
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
Imports System.Text
Imports System.Globalization

Class Sample
   Private Shared sb As New StringBuilder()

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

Keterangan

Metode ini menggunakan fitur pemformatan komposit dari .NET Framework untuk mengonversi nilai objek ke representasi teksnya dan menyematkan representasi tersebut di objek saat iniStringBuilder.

Parameter format terdiri dari nol atau lebih eksekusi teks yang diindeks dengan nol atau lebih tempat penampung terindeks, yang disebut item format. Indeks item format harus 0, agar sesuai dengan arg0, objek tunggal dalam daftar parameter metode ini. Proses pemformatan menggantikan setiap item format dengan representasi arg0string .

Sintaks item format adalah sebagai berikut:

{index[,length][:formatString]}

Elemen dalam tanda kurung siku bersifat opsional. Tabel berikut ini menjelaskan setiap elemen.

Elemen Deskripsi
indeks Posisi berbasis nol dalam daftar parameter objek yang akan diformat. Jika objek yang ditentukan oleh indeks adalah null, item format digantikan oleh String.Empty. Jika tidak ada parameter dalam posisi indeks , akan FormatException dilemparkan.
,length Jumlah minimum karakter dalam representasi string parameter. Jika positif, parameter diratakan dengan kanan; jika negatif, sejajar kiri.
:formatString String format standar atau kustom yang didukung oleh parameter .

Catatan

Untuk string format standar dan kustom yang digunakan dengan nilai tanggal dan waktu, lihat String Format Tanggal dan Waktu Standar serta String Format Tanggal dan Waktu Kustom. Untuk string format standar dan kustom yang digunakan dengan nilai numerik, lihat String Format Numerik Standar dan String Format Numerik Kustom. Untuk string format standar yang digunakan dengan enumerasi, lihat String Format Enumerasi.

arg0 mewakili objek yang akan diformat. Setiap item format di format diganti dengan representasi string .arg0 Jika item format menyertakan formatString dan arg0 mengimplementasikan IFormattable antarmuka, maka arg0.ToString(formatString, null) menentukan pemformatan. Jika tidak, arg0.ToString() tentukan pemformatan.

Jika string yang ditetapkan adalah format "Terima kasih atas sumbangan Anda atas kaleng makanan {0:###} kepada organisasi amal kami." dan arg0 merupakan bilangan bulat dengan nilai 10, nilai yang dikembalikan adalah "Terima kasih atas sumbangan 10 kaleng makanan untuk organisasi amal kami."

Catatan Bagi Pemanggil

Di .NET Core dan di .NET Framework 4.0 dan versi yang lebih baru, ketika Anda membuat StringBuilder instans objek dengan memanggil StringBuilder(Int32, Int32) konstruktor, panjang dan kapasitas StringBuilder instans dapat tumbuh di luar nilai propertinyaMaxCapacity. Ini dapat terjadi terutama ketika Anda memanggil Append(String) metode dan AppendFormat(String, Object) untuk menambahkan string kecil.

Lihat juga

Berlaku untuk

AppendFormat(IFormatProvider, String, Object[])

Sumber:
StringBuilder.cs
Sumber:
StringBuilder.cs
Sumber:
StringBuilder.cs

Menambahkan string yang dikembalikan dengan memproses string format komposit, yang berisi nol atau lebih item format, ke instans ini. Setiap item format digantikan oleh representasi string dari argumen yang sesuai dalam array parameter menggunakan penyedia format tertentu.

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

Parameter

provider
IFormatProvider

Objek yang memasok informasi pemformatan khusus budaya.

format
String

String format komposit.

args
Object[]

Array objek yang akan diformat.

Mengembalikan

Referensi ke instans ini setelah operasi penampan selesai. Setelah operasi penamangan, instans ini berisi data apa pun yang ada sebelum operasi, diakhiri oleh salinan format di mana spesifikasi format apa pun digantikan oleh representasi string dari argumen objek yang sesuai.

Pengecualian

formatadalah null.

format tidak valid.

-atau-

Indeks item format kurang dari 0 (nol), atau lebih besar dari atau sama dengan panjang args array.

Panjang string yang diperluas akan melebihi MaxCapacity.

Contoh

Contoh berikut menunjukkan AppendFormat metode .

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
*/
open System.Text
open System.Globalization

let sb = StringBuilder()

let show (sbs: StringBuilder) =
    printfn $"{sbs}"
    sb.Length <- 0

let var1 = 111
let var2 = 2.22f
let var3 = "abcd"
let var4: obj[] = [| 3; 4.4; 'X' |]

printfn "StringBuilder.AppendFormat method:"
sb.AppendFormat("1) {0}", var1) |> ignore
show sb
sb.AppendFormat("2) {0}, {1}", var1, var2) |> ignore
show sb
sb.AppendFormat("3) {0}, {1}, {2}", var1, var2, var3) |> ignore
show sb
sb.AppendFormat("4) {0}, {1}, {2}", var4) |> ignore
show sb
let ci = CultureInfo("es-ES", true)
sb.AppendFormat(ci, "5) {0}", var2) |> ignore
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
Imports System.Text
Imports System.Globalization

Class Sample
   Private Shared sb As New StringBuilder()

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

Contoh berikut mendefinisikan implementasi kustom IFormatProvider bernama CustomerFormatter yang memformat nomor pelanggan 10 digit dengan tanda hubung setelah digit keempat dan ketujuh. Ini diteruskan ke StringBuilder.AppendFormat(IFormatProvider, String, Object[]) metode untuk membuat string yang menyertakan nomor pelanggan dan nama pelanggan yang diformat.

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
open System
open System.Text

type Customer(name: string, number: int) =
    member _.Name = name
    member _.CustomerNumber = number

type CustomerNumberFormatter() =
    interface IFormatProvider with
        member this.GetFormat(formatType) =
            if formatType = typeof<ICustomFormatter> then this else null

    interface ICustomFormatter with
        member _.Format(_, arg, _) =
            match arg with
            | :? int as i ->
                let custNumber = i.ToString "D10"
                $"{custNumber.Substring(0, 4)}-{custNumber.Substring(4, 3)}-{custNumber.Substring(7, 3)}"
            | _ -> null

let customer = Customer("A Plus Software", 903654)
let sb = StringBuilder()

sb.AppendFormat(CustomerNumberFormatter(), "{0}: {1}", customer.CustomerNumber, customer.Name)
|> ignore

printfn $"{sb}"

// 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

Keterangan

Metode ini menggunakan fitur pemformatan komposit dari .NET Framework untuk mengonversi nilai objek ke representasi teksnya dan menyematkan representasi tersebut di objek saat iniStringBuilder.

Parameter format terdiri dari nol atau lebih eksekusi teks yang diindeks dengan nol atau lebih tempat penampung terindeks, yang disebut item format, yang sesuai dengan objek dalam daftar parameter metode ini. Proses pemformatan menggantikan setiap item format dengan representasi string objek terkait.

Sintaks item format adalah sebagai berikut:

{index[,length][:formatString]}

Elemen dalam tanda kurung siku bersifat opsional. Tabel berikut ini menjelaskan setiap elemen.

Elemen Deskripsi
indeks Posisi berbasis nol dalam daftar parameter objek yang akan diformat. Jika objek yang ditentukan oleh indeks adalah null, item format digantikan oleh String.Empty. Jika tidak ada parameter dalam posisi indeks , akan FormatException dilemparkan.
,length Jumlah minimum karakter dalam representasi string parameter. Jika positif, parameter diratakan dengan kanan; jika negatif, sejajar kiri.
:formatString String format standar atau kustom yang didukung oleh parameter .

Catatan

Untuk string format standar dan kustom yang digunakan dengan nilai tanggal dan waktu, lihat String Format Tanggal dan Waktu Standar serta String Format Tanggal dan Waktu Kustom. Untuk string format standar dan kustom yang digunakan dengan nilai numerik, lihat String Format Numerik Standar dan String Format Numerik Kustom. Untuk string format standar yang digunakan dengan enumerasi, lihat String Format Enumerasi.

Parameter provider menentukan IFormatProvider implementasi yang dapat memberikan informasi pemformatan untuk objek di args. provider bisa jadi salah satu dari hal berikut:

provider Jika parameternya adalah null, informasi penyedia format diperoleh dari budaya saat ini.

args mewakili objek yang akan diformat. Setiap item format di format diganti dengan representasi string objek yang sesuai di args. Jika item format menyertakan formatString dan objek terkait dalam args mengimplementasikan IFormattable antarmuka, maka args[index].ToString(formatString, provider) menentukan pemformatan. Jika tidak, args[index].ToString() tentukan pemformatan.

Catatan Bagi Pemanggil

Di .NET Core dan di .NET Framework 4.0 dan versi yang lebih baru, ketika Anda membuat StringBuilder instans objek dengan memanggil StringBuilder(Int32, Int32) konstruktor, panjang dan kapasitas StringBuilder instans dapat tumbuh di luar nilai propertinyaMaxCapacity. Ini dapat terjadi terutama ketika Anda memanggil Append(String) metode dan AppendFormat(String, Object) untuk menambahkan string kecil.

Lihat juga

Berlaku untuk

AppendFormat(IFormatProvider, String, Object)

Sumber:
StringBuilder.cs
Sumber:
StringBuilder.cs
Sumber:
StringBuilder.cs

Menambahkan string yang dikembalikan dengan memproses string format komposit, yang berisi nol atau lebih item format, ke instans ini. Setiap item format digantikan oleh representasi string dari satu argumen menggunakan penyedia format tertentu.

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

Parameter

provider
IFormatProvider

Objek yang memasok informasi pemformatan khusus budaya.

format
String

String format komposit.

arg0
Object

Objek yang akan diformat.

Mengembalikan

Referensi ke instans ini setelah operasi penampan selesai. Setelah operasi penambahan, instans ini berisi data apa pun yang ada sebelum operasi, diakhiri oleh salinan format di mana spesifikasi format apa pun digantikan oleh representasi string .arg0

Pengecualian

formatadalah null.

format tidak valid.

-atau-

Indeks item format kurang dari 0 (nol), atau lebih besar dari atau sama dengan satu (1).

Panjang string yang diperluas akan melebihi MaxCapacity.

Contoh

Berikut ini mencakup dua panggilan ke AppendFormat(IFormatProvider, String, Object) metode . Keduanya menggunakan konvensi pemformatan budaya Kerajaan English-United (en-GB). Yang pertama menyisipkan representasi string dari Decimal mata uang nilai dalam string hasil. Yang kedua menyisipkan DateTime nilai di dua tempat dalam string hasil, yang pertama termasuk hanya string tanggal pendek dan yang kedua string waktu singkat.

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
open System
open System.Globalization
open System.Text

let sb = StringBuilder()
let value = 16.95m
let enGB = CultureInfo.CreateSpecificCulture "en-GB"
let dateToday = DateTime.Now
sb.AppendFormat(enGB, "Final Price: {0:C2}", value) |> ignore
sb.AppendLine() |> ignore
sb.AppendFormat(enGB, "Date and Time: {0:d} at {0:t}", dateToday) |> ignore
printfn $"{sb}"

// 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

Keterangan

Metode ini menggunakan fitur pemformatan komposit dari .NET Framework untuk mengonversi nilai arg0 ke representasi teksnya dan menyematkan representasi tersebut di objek saat iniStringBuilder.

Parameter format terdiri dari nol atau lebih eksekusi teks yang diindeks dengan nol atau lebih tempat penampung terindeks, yang disebut item format. Indeks setiap item format harus nol (0) karena metode ini menyertakan daftar argumen dengan satu argumen. Proses pemformatan menggantikan setiap item format dengan representasi string .arg0

Sintaks item format adalah sebagai berikut:

{index[,length][:formatString]}

Elemen dalam tanda kurung siku bersifat opsional. Tabel berikut ini menjelaskan setiap elemen.

Elemen Deskripsi
indeks Posisi berbasis nol dalam daftar parameter objek yang akan diformat. Jika objek yang ditentukan oleh indeks adalah null, item format digantikan oleh String.Empty. Dalam hal ini, karena AppendFormat(IFormatProvider, String, Object) metode memiliki argumen tunggal dalam daftar argumen, nilai indeks harus selalu 0. Jika tidak, akan FormatException dilemparkan.
,length Jumlah minimum karakter dalam representasi string parameter. Jika positif, parameter diratakan dengan kanan; jika negatif, diratakan kiri.
:formatString String format standar atau kustom yang didukung oleh parameter .

Catatan

Untuk string format standar dan kustom yang digunakan dengan nilai tanggal dan waktu, lihat String Format Tanggal dan Waktu Standar serta String Format Tanggal dan Waktu Kustom. Untuk string format standar dan kustom yang digunakan dengan nilai numerik, lihat String Format Numerik Standar dan String Format Numerik Kustom. Untuk string format standar yang digunakan dengan enumerasi, lihat String Format Enumerasi.

Parameter provider menentukan IFormatProvider implementasi yang dapat memberikan informasi pemformatan untuk objek di args. provider bisa jadi salah satu dari hal berikut:

  • Objek CultureInfo yang menyediakan informasi pemformatan khusus budaya.

  • Objek NumberFormatInfo yang menyediakan informasi pemformatan khusus budaya jika arg0 merupakan nilai numerik.

  • Objek DateTimeFormatInfo yang menyediakan informasi pemformatan khusus budaya jika arg0 merupakan nilai tanggal dan waktu.

  • Implementasi kustom IFormatProvider yang menyediakan informasi pemformatan untuk arg0. Biasanya, implementasi seperti itu ICustomFormatter juga mengimplementasikan antarmuka.

provider Jika parameter adalah null, informasi pemformatan diperoleh dari budaya saat ini.

arg0 mewakili objek yang akan diformat. Setiap item format di format diganti dengan representasi string .arg0 Jika item format menyertakan formatString dan arg0 mengimplementasikan IFormattable antarmuka, maka arg0.ToString(formatString, provider) menentukan pemformatan. Jika tidak, arg0.ToString() tentukan pemformatan.

Catatan Bagi Pemanggil

Di .NET Core dan dalam versi .NET Framework 4.0 dan yang lebih baru, ketika Anda membuat StringBuilder instans objek dengan memanggil StringBuilder(Int32, Int32) konstruktor, panjang dan kapasitas StringBuilder instans dapat tumbuh di luar nilai propertinyaMaxCapacity. Ini dapat terjadi terutama ketika Anda memanggil Append(String) metode dan AppendFormat(String, Object) untuk menambahkan string kecil.

Lihat juga

Berlaku untuk

AppendFormat(String, Object[])

Sumber:
StringBuilder.cs
Sumber:
StringBuilder.cs
Sumber:
StringBuilder.cs

Menambahkan string yang dikembalikan dengan memproses string format komposit, yang berisi nol atau lebih item format, ke instans ini. Setiap item format digantikan oleh representasi string dari argumen yang sesuai dalam array parameter.

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

Parameter

format
String

String format komposit.

args
Object[]

Array objek yang akan diformat.

Mengembalikan

Referensi ke instans ini dengan format ditambahkan. Setiap item format di format digantikan oleh representasi string dari argumen objek yang sesuai.

Pengecualian

format atau args adalah null.

format tidak valid.

-atau-

Indeks item format kurang dari 0 (nol), atau lebih besar dari atau sama dengan panjang args array.

Panjang string yang diperluas akan melebihi MaxCapacity.

Contoh

Contoh berikut menunjukkan AppendFormat metode .

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
*/
open System.Text
open System.Globalization

let sb = StringBuilder()

let show (sbs: StringBuilder) =
    printfn $"{sbs}"
    sb.Length <- 0

let var1 = 111
let var2 = 2.22f
let var3 = "abcd"
let var4: obj[] = [| 3; 4.4; 'X' |]

printfn "StringBuilder.AppendFormat method:"
sb.AppendFormat("1) {0}", var1) |> ignore
show sb
sb.AppendFormat("2) {0}, {1}", var1, var2) |> ignore
show sb
sb.AppendFormat("3) {0}, {1}, {2}", var1, var2, var3) |> ignore
show sb
sb.AppendFormat("4) {0}, {1}, {2}", var4) |> ignore
show sb
let ci = CultureInfo("es-ES", true)
sb.AppendFormat(ci, "5) {0}", var2) |> ignore
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
Imports System.Text
Imports System.Globalization

Class Sample
   Private Shared sb As New StringBuilder()

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

Keterangan

Metode ini menggunakan fitur pemformatan komposit dari .NET Framework untuk mengonversi nilai objek ke representasi teksnya dan menyematkan representasi tersebut di objek saat iniStringBuilder.

Parameter format terdiri dari nol atau lebih eksekusi teks yang diindeks dengan nol atau lebih tempat penampung terindeks, yang disebut item format, yang sesuai dengan objek dalam daftar parameter metode ini. Proses pemformatan menggantikan setiap item format dengan representasi string objek yang sesuai.

Sintaks item format adalah sebagai berikut:

{index[,length][:formatString]}

Elemen dalam tanda kurung siku bersifat opsional. Tabel berikut ini menjelaskan setiap elemen.

Elemen Deskripsi
indeks Posisi berbasis nol dalam daftar parameter objek yang akan diformat. Jika objek yang ditentukan oleh indeks adalah null, item format digantikan oleh String.Empty. Jika tidak ada parameter dalam posisi indeks , akan FormatException dilemparkan.
,length Jumlah minimum karakter dalam representasi string parameter. Jika positif, parameter diratakan dengan kanan; jika negatif, diratakan kiri.
:formatString String format standar atau kustom yang didukung oleh parameter .

Catatan

Untuk string format standar dan kustom yang digunakan dengan nilai tanggal dan waktu, lihat String Format Tanggal dan Waktu Standar serta String Format Tanggal dan Waktu Kustom. Untuk string format standar dan kustom yang digunakan dengan nilai numerik, lihat String Format Numerik Standar dan String Format Numerik Kustom. Untuk string format standar yang digunakan dengan enumerasi, lihat String Format Enumerasi.

args mewakili objek yang akan diformat. Setiap item format di format diganti dengan representasi string objek yang sesuai di args. Jika item format menyertakan formatString dan objek terkait dalam args mengimplementasikan IFormattable antarmuka, maka args[index].ToString(formatString, provider) menentukan pemformatan. Jika tidak, args[index].ToString() tentukan pemformatan.

Jika string yang ditetapkan adalah format "Terima kasih atas sumbangan Anda atas kaleng makanan {0:###} kepada organisasi amal kami." dan arg0 merupakan bilangan bulat dengan nilai 10, nilai yang dikembalikan adalah "Terima kasih atas sumbangan 10 kaleng makanan untuk organisasi amal kami."

Catatan Bagi Pemanggil

Di .NET Core dan dalam versi .NET Framework 4.0 dan yang lebih baru, ketika Anda membuat StringBuilder instans objek dengan memanggil StringBuilder(Int32, Int32) konstruktor, panjang dan kapasitas StringBuilder instans dapat tumbuh di luar nilai propertinyaMaxCapacity. Ini dapat terjadi terutama ketika Anda memanggil Append(String) metode dan AppendFormat(String, Object) untuk menambahkan string kecil.

Lihat juga

Berlaku untuk

AppendFormat(IFormatProvider, CompositeFormat, Object[])

Sumber:
StringBuilder.cs
Sumber:
StringBuilder.cs

Menambahkan string yang dikembalikan dengan memproses string format komposit, yang berisi nol atau lebih item format, ke instans ini. Setiap item format digantikan oleh representasi string dari salah satu argumen menggunakan penyedia format tertentu.

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

Parameter

provider
IFormatProvider

Objek yang memasok informasi pemformatan khusus budaya.

args
Object[]

Array objek yang akan diformat.

Mengembalikan

Referensi ke instans ini setelah operasi penampan selesai.

Pengecualian

format atau args adalah null.

Indeks item format lebih besar dari atau sama dengan jumlah argumen yang disediakan.

Berlaku untuk

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

Sumber:
StringBuilder.cs
Sumber:
StringBuilder.cs

Menambahkan string yang dikembalikan dengan memproses string format komposit, yang berisi nol atau lebih item format, ke instans ini. Setiap item format digantikan oleh representasi string dari salah satu argumen menggunakan penyedia format tertentu.

public:
generic <typename TArg0, typename TArg1, typename TArg2>
 System::Text::StringBuilder ^ AppendFormat(IFormatProvider ^ provider, System::Text::CompositeFormat ^ format, TArg0 arg0, TArg1 arg1, TArg2 arg2);
public System.Text.StringBuilder AppendFormat<TArg0,TArg1,TArg2> (IFormatProvider? provider, System.Text.CompositeFormat format, TArg0 arg0, TArg1 arg1, TArg2 arg2);
member this.AppendFormat : IFormatProvider * System.Text.CompositeFormat * 'TArg0 * 'TArg1 * 'TArg2 -> System.Text.StringBuilder
Public Function AppendFormat(Of TArg0, TArg1, TArg2) (provider As IFormatProvider, format As CompositeFormat, arg0 As TArg0, arg1 As TArg1, arg2 As TArg2) As StringBuilder

Jenis parameter

TArg0

Jenis objek pertama yang akan diformat.

TArg1

Jenis objek kedua yang akan diformat.

TArg2

Jenis objek ketiga yang akan diformat.

Parameter

provider
IFormatProvider

Objek yang memasok informasi pemformatan khusus budaya.

arg0
TArg0

Objek pertama yang diformat.

arg1
TArg1

Objek kedua yang akan diformat.

arg2
TArg2

Objek ketiga yang akan diformat.

Mengembalikan

Referensi ke instans ini setelah operasi penampan selesai.

Pengecualian

formatadalah null.

Indeks item format lebih besar dari atau sama dengan jumlah argumen yang disediakan.

Berlaku untuk

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

Sumber:
StringBuilder.cs
Sumber:
StringBuilder.cs

Menambahkan string yang dikembalikan dengan memproses string format komposit, yang berisi nol atau lebih item format, ke instans ini. Setiap item format digantikan oleh representasi string dari salah satu argumen menggunakan penyedia format tertentu.

public:
generic <typename TArg0, typename TArg1>
 System::Text::StringBuilder ^ AppendFormat(IFormatProvider ^ provider, System::Text::CompositeFormat ^ format, TArg0 arg0, TArg1 arg1);
public System.Text.StringBuilder AppendFormat<TArg0,TArg1> (IFormatProvider? provider, System.Text.CompositeFormat format, TArg0 arg0, TArg1 arg1);
member this.AppendFormat : IFormatProvider * System.Text.CompositeFormat * 'TArg0 * 'TArg1 -> System.Text.StringBuilder
Public Function AppendFormat(Of TArg0, TArg1) (provider As IFormatProvider, format As CompositeFormat, arg0 As TArg0, arg1 As TArg1) As StringBuilder

Jenis parameter

TArg0

Jenis objek pertama yang akan diformat.

TArg1

Jenis objek kedua yang akan diformat.

Parameter

provider
IFormatProvider

Objek yang memasok informasi pemformatan khusus budaya.

arg0
TArg0

Objek pertama yang diformat.

arg1
TArg1

Objek kedua yang akan diformat.

Mengembalikan

Referensi ke instans ini setelah operasi penampan selesai.

Pengecualian

formatadalah null.

Indeks item format lebih besar dari atau sama dengan jumlah argumen yang disediakan.

Berlaku untuk

AppendFormat<TArg0>(IFormatProvider, CompositeFormat, TArg0)

Sumber:
StringBuilder.cs
Sumber:
StringBuilder.cs

Menambahkan string yang dikembalikan dengan memproses string format komposit, yang berisi nol atau lebih item format, ke instans ini. Setiap item format digantikan oleh representasi string dari salah satu argumen menggunakan penyedia format tertentu.

public:
generic <typename TArg0>
 System::Text::StringBuilder ^ AppendFormat(IFormatProvider ^ provider, System::Text::CompositeFormat ^ format, TArg0 arg0);
public System.Text.StringBuilder AppendFormat<TArg0> (IFormatProvider? provider, System.Text.CompositeFormat format, TArg0 arg0);
member this.AppendFormat : IFormatProvider * System.Text.CompositeFormat * 'TArg0 -> System.Text.StringBuilder
Public Function AppendFormat(Of TArg0) (provider As IFormatProvider, format As CompositeFormat, arg0 As TArg0) As StringBuilder

Jenis parameter

TArg0

Jenis objek pertama yang akan diformat.

Parameter

provider
IFormatProvider

Objek yang memasok informasi pemformatan khusus budaya.

arg0
TArg0

Objek pertama yang diformat.

Mengembalikan

Referensi ke instans ini setelah operasi penampan selesai.

Pengecualian

formatadalah null.

Indeks item format lebih besar dari atau sama dengan jumlah argumen yang disediakan.

Berlaku untuk