StringBuilder.AppendFormat Metode
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
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(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, 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(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(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(String, 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 argumen yang sesuai dalam rentang parameter. |
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 yang sesuai 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(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, 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 argumen yang sesuai dalam rentang parameter 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(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);
public System.Text.StringBuilder AppendFormat (IFormatProvider? provider, System.Text.CompositeFormat format, scoped 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.
- format
- CompositeFormat
Sebuah CompositeFormat.
- args
- ReadOnlySpan<Object>
Rentang objek untuk diformat.
Mengembalikan
Referensi ke instans ini setelah operasi penampingan selesai.
Pengecualian
format
null
.
Indeks item format lebih besar dari atau sama dengan jumlah argumen yang disediakan.
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 akan 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 dalam format
digantikan oleh representasi string dari argumen objek yang sesuai.
Pengecualian
format
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 metode AppendFormat.
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 StringBuilder saat ini.
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 yang sesuai.
Sintaks item format adalah sebagai berikut:
{indeks [, panjang][: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 |
, panjang |
Jumlah minimum karakter dalam representasi string parameter. Jika positif, parameter selaras dengan kanan; jika negatif, diratakan kiri. |
: formatString |
String format standar atau kustom yang didukung oleh parameter . |
Nota
Untuk string format standar dan kustom yang digunakan dengan nilai tanggal dan waktu, lihat String Format Tanggal dan Waktu Standar dan 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 dalam format
diganti dengan representasi string dari arg0
, arg1
, atau arg2
, tergantung pada indeks item format. Jika item format menyertakan formatString
dan objek terkait di args
mengimplementasikan antarmuka IFormattable, maka arg
x.ToString(formatString, null)
menentukan pemformatan, di mana x adalah indeks argumen. Jika tidak, arg
x.ToString()
menentukan pemformatan.
Jika untai yang ditetapkan untuk format
adalah "Terima kasih atas sumbangan {0:####} kaleng makanan untuk organisasi amal kami." dan arg0
adalah bilangan bulat dengan nilai 10, nilai pengembaliannya 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 instans objek StringBuilder dengan memanggil konstruktor StringBuilder(Int32, Int32), panjang dan kapasitas instans StringBuilder dapat tumbuh di luar nilai properti MaxCapacity. Ini dapat terjadi terutama ketika Anda memanggil metode Append(String) dan AppendFormat(String, Object) untuk menambahkan string kecil.
Lihat juga
- Tipe Pemformatan di .NET
- Pemformatan Komposit
- String Format Numerik Standar
- String Format Numerik Kustom
- String Format Tanggal dan Waktu Standar
- String Format Tanggal dan Waktu Kustom
- String Format Rentang Waktu Standar
- String Format Rentang Waktu Kustom
- String Format Enumerasi
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 akan diformat.
- arg1
- Object
Objek kedua yang akan diformat.
Mengembalikan
Referensi ke instans ini setelah operasi penampingan 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 dari argumen objek yang sesuai.
Pengecualian
format
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 metode AppendFormat(IFormatProvider, String, Object, Object) untuk menampilkan data waktu dan suhu yang disimpan dalam objek Dictionary<TKey,TValue> generik. Perhatikan bahwa string format memiliki tiga item format, meskipun hanya ada objek yang akan 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 StringBuilder saat ini.
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:
{indeks [, panjang][: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 |
, panjang |
Jumlah minimum karakter dalam representasi string parameter. Jika positif, parameter selaras dengan kanan; jika negatif, diratakan kiri. |
: formatString |
String format standar atau kustom yang didukung oleh parameter . |
Nota
Untuk string format standar dan kustom yang digunakan dengan nilai tanggal dan waktu, lihat String Format Tanggal dan Waktu Standar dan 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 implementasi IFormatProvider yang dapat memberikan informasi pemformatan untuk arg0
dan arg1
.
provider
dapat berupa salah satu hal berikut:
Objek CultureInfo yang menyediakan informasi pemformatan khusus budaya.
Objek NumberFormatInfo yang menyediakan informasi pemformatan khusus budaya untuk
arg0
atauarg1
jika merupakan nilai numerik.Objek DateTimeFormatInfo yang menyediakan informasi pemformatan khusus budaya untuk
arg0
atauarg1
jika merupakan nilai tanggal dan waktu.Implementasi IFormatProvider kustom yang menyediakan informasi pemformatan untuk
arg0
danarg1
. Biasanya, implementasi seperti itu juga mengimplementasikan antarmuka ICustomFormatter.
Jika parameter provider
null
, informasi penyedia format diperoleh dari budaya saat ini.
arg0
dan arg1
mewakili objek yang akan diformat. Setiap item format dalam format
diganti dengan representasi string objek yang memiliki indeks yang sesuai. Jika item format menyertakan formatString
dan argumen terkait mengimplementasikan antarmuka IFormattable, maka metode ToString(formatString, provider)
argumen menentukan pemformatan. Jika tidak, metode ToString()
argumen menentukan pemformatan.
Catatan Bagi Pemanggil
IIn .NET Core dan di .NET Framework 4.0 dan versi yang lebih baru, ketika Anda membuat instans objek StringBuilder dengan memanggil konstruktor StringBuilder(Int32, Int32), panjang dan kapasitas instans StringBuilder dapat tumbuh di luar nilai properti MaxCapacity. Ini dapat terjadi terutama ketika Anda memanggil metode Append(String) dan AppendFormat(String, Object) untuk menambahkan string kecil.
Lihat juga
- Tipe Pemformatan di .NET
- Pemformatan Komposit
- Cara: Menentukan dan Menggunakan Penyedia Format Numerik Kustom
- String Format Numerik Standar
- String Format Numerik Kustom
- String Format Tanggal dan Waktu Standar
- String Format Tanggal dan Waktu Kustom
- String Format Rentang Waktu Standar
- String Format Rentang Waktu Kustom
- String Format Enumerasi
Berlaku untuk
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 akan diformat.
- arg1
- Object
Objek kedua yang akan diformat.
Mengembalikan
Referensi ke instans ini dengan format
ditambahkan. Setiap item format dalam format
digantikan oleh representasi string dari argumen objek yang sesuai.
Pengecualian
format
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 metode AppendFormat.
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 StringBuilder saat ini.
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 yang sesuai.
Sintaks item format adalah sebagai berikut:
{indeks [, panjang][: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 |
, panjang |
Jumlah minimum karakter dalam representasi string parameter. Jika positif, parameter selaras dengan kanan; jika negatif, diratakan kiri. |
: formatString |
String format standar atau kustom yang didukung oleh parameter . |
Nota
Untuk string format standar dan kustom yang digunakan dengan nilai tanggal dan waktu, lihat String Format Tanggal dan Waktu Standar dan 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 dalam format
diganti dengan representasi string baik arg0
atau arg1
. Jika item format menyertakan formatString
dan objek terkait mengimplementasikan antarmuka IFormattable, maka arg
x.ToString(formatString, provider)
menentukan pemformatan, di mana x adalah indeks argumen. Jika tidak, arg
x.ToString()
menentukan pemformatan.
Jika untai yang ditetapkan untuk format
adalah "Terima kasih atas sumbangan {0:####} kaleng makanan untuk organisasi amal kami." dan arg0
adalah bilangan bulat dengan nilai 10, nilai pengembaliannya 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 instans objek StringBuilder dengan memanggil konstruktor StringBuilder(Int32, Int32), panjang dan kapasitas instans StringBuilder dapat tumbuh di luar nilai properti MaxCapacity. Ini dapat terjadi terutama ketika Anda memanggil metode Append(String) dan AppendFormat(String, Object) untuk menambahkan string kecil.
Lihat juga
- Tipe Pemformatan di .NET
- Pemformatan Komposit
- String Format Numerik Standar
- String Format Numerik Kustom
- String Format Tanggal dan Waktu Standar
- String Format Tanggal dan Waktu Kustom
- String Format Rentang Waktu Standar
- String Format Rentang Waktu Kustom
- String Format Enumerasi
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 akan diformat.
- arg1
- Object
Objek kedua yang akan diformat.
- arg2
- Object
Objek ketiga yang akan diformat.
Mengembalikan
Referensi ke instans ini setelah operasi penampingan 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 dari argumen objek yang sesuai.
Pengecualian
format
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 metode AppendFormat(IFormatProvider, String, Object, Object, Object) untuk mengilustrasikan hasil operasi And
Boolean dengan nilai bilangan 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 StringBuilder saat ini.
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:
{indeks [, panjang][: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 |
, panjang |
Jumlah minimum karakter dalam representasi string parameter. Jika positif, parameter selaras dengan kanan; jika negatif, diratakan kiri. |
: formatString |
String format standar atau kustom yang didukung oleh parameter . |
Nota
Untuk string format standar dan kustom yang digunakan dengan nilai tanggal dan waktu, lihat String Format Tanggal dan Waktu Standar dan 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 implementasi IFormatProvider yang dapat memberikan informasi pemformatan untuk arg0
dan arg1
.
provider
dapat berupa salah satu hal berikut:
Objek CultureInfo yang menyediakan informasi pemformatan khusus budaya.
Objek NumberFormatInfo yang menyediakan informasi pemformatan khusus budaya untuk
arg0
atauarg1
jika merupakan nilai numerik.Objek DateTimeFormatInfo yang menyediakan informasi pemformatan khusus budaya untuk
arg0
,arg1
, atauarg2
jika merupakan nilai tanggal dan waktu.Implementasi IFormatProvider kustom yang menyediakan informasi pemformatan untuk
arg0
,arg1
, danarg2
. Biasanya, implementasi seperti itu juga mengimplementasikan antarmuka ICustomFormatter.
Jika parameter provider
null
, informasi penyedia format diperoleh dari budaya saat ini.
arg0
, arg1
, dan arg2
mewakili objek yang akan diformat. Setiap item format dalam format
diganti dengan representasi string objek yang memiliki indeks yang sesuai. Jika item format menyertakan formatString
dan argumen terkait mengimplementasikan antarmuka IFormattable, maka metode ToString(formatString, provider)
argumen menentukan pemformatan. Jika tidak, metode ToString()
argumen menentukan pemformatan.
Catatan Bagi Pemanggil
Di .NET Core dan di .NET Framework 4.0 dan versi yang lebih baru, ketika Anda membuat instans objek StringBuilder dengan memanggil konstruktor StringBuilder(Int32, Int32), panjang dan kapasitas instans StringBuilder dapat tumbuh di luar nilai properti MaxCapacity. Ini dapat terjadi terutama ketika Anda memanggil metode Append(String) dan AppendFormat(String, Object) untuk menambahkan string kecil.
Lihat juga
- Tipe Pemformatan di .NET
- Pemformatan Komposit
- Cara: Menentukan dan Menggunakan Penyedia Format Numerik Kustom
- String Format Numerik Standar
- String Format Numerik Kustom
- String Format Tanggal dan Waktu Standar
- String Format Tanggal dan Waktu Kustom
- String Format Rentang Waktu Standar
- String Format Rentang Waktu Kustom
- String Format Enumerasi
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.
- format
- CompositeFormat
Sebuah CompositeFormat.
- args
- Object[]
Array objek untuk diformat.
Mengembalikan
Referensi ke instans ini setelah operasi penampingan selesai.
Pengecualian
format
atau args
null
.
Indeks item format lebih besar dari atau sama dengan jumlah argumen yang disediakan.
Berlaku untuk
AppendFormat(String, 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 argumen yang sesuai dalam rentang parameter.
public:
System::Text::StringBuilder ^ AppendFormat(System::String ^ format, ReadOnlySpan<System::Object ^> args);
public System.Text.StringBuilder AppendFormat (string format, scoped ReadOnlySpan<object?> args);
member this.AppendFormat : string * ReadOnlySpan<obj> -> System.Text.StringBuilder
Public Function AppendFormat (format As String, args As ReadOnlySpan(Of Object)) As StringBuilder
Parameter
- format
- String
String format komposit.
- args
- ReadOnlySpan<Object>
Rentang objek untuk diformat.
Mengembalikan
Referensi ke instans ini setelah operasi penampingan selesai.
Pengecualian
format
null
.
Panjang string yang diperluas akan melebihi MaxCapacity.
format
tidak valid.
-atau-
Indeks item format kurang dari 0 (nol), atau lebih besar dari atau sama dengan panjang rentang args
.
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 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 untuk diformat.
Mengembalikan
Referensi ke instans ini setelah operasi penampingan 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 dari argumen objek yang sesuai.
Pengecualian
format
null
.
format
tidak valid.
-atau-
Indeks item format kurang dari 0 (nol), atau lebih besar dari atau sama dengan panjang array args
.
Panjang string yang diperluas akan melebihi MaxCapacity.
Contoh
Contoh berikut menunjukkan metode AppendFormat.
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 IFormatProvider kustom bernama CustomerFormatter
yang memformat nomor pelanggan 10 digit dengan tanda hubung setelah digit keempat dan ketujuh. Ini diteruskan ke metode StringBuilder.AppendFormat(IFormatProvider, String, Object[]) 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 StringBuilder saat ini.
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:
{indeks [, panjang][: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 |
, panjang |
Jumlah minimum karakter dalam representasi string parameter. Jika positif, parameter selaras dengan kanan; jika negatif, diratakan kiri. |
: formatString |
String format standar atau kustom yang didukung oleh parameter . |
Nota
Untuk string format standar dan kustom yang digunakan dengan nilai tanggal dan waktu, lihat String Format Tanggal dan Waktu Standar dan 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 implementasi IFormatProvider yang dapat memberikan informasi pemformatan untuk objek di args
.
provider
dapat berupa salah satu hal berikut:
Objek CultureInfo yang menyediakan informasi pemformatan khusus budaya.
Objek NumberFormatInfo yang menyediakan informasi pemformatan khusus budaya untuk nilai numerik dalam
args
.Objek DateTimeFormatInfo yang menyediakan informasi pemformatan khusus budaya untuk nilai tanggal dan waktu di
args
.Implementasi IFormatProvider kustom yang menyediakan informasi pemformatan untuk satu atau beberapa objek di
args
. Biasanya, implementasi seperti itu juga mengimplementasikan antarmuka ICustomFormatter. Contoh kedua di bagian berikutnya mengilustrasikan panggilan metode StringBuilder.AppendFormat(IFormatProvider, String, Object[]) dengan implementasi IFormatProvider kustom.
Jika parameter provider
null
, informasi penyedia format diperoleh dari budaya saat ini.
args
mewakili objek yang akan diformat. Setiap item format dalam format
diganti dengan representasi string objek yang sesuai di args
. Jika item format menyertakan formatString
dan objek terkait di args
mengimplementasikan antarmuka IFormattable, maka args[index].ToString(formatString, provider)
menentukan pemformatan. Jika tidak, args[index].ToString()
menentukan pemformatan.
Catatan Bagi Pemanggil
Di .NET Core dan di .NET Framework 4.0 dan versi yang lebih baru, ketika Anda membuat instans objek StringBuilder dengan memanggil konstruktor StringBuilder(Int32, Int32), panjang dan kapasitas instans StringBuilder dapat tumbuh di luar nilai properti MaxCapacity. Ini dapat terjadi terutama ketika Anda memanggil metode Append(String) dan AppendFormat(String, Object) untuk menambahkan string kecil.
Lihat juga
- Tipe Pemformatan di .NET
- Pemformatan Komposit
- Cara: Menentukan dan Menggunakan Penyedia Format Numerik Kustom
- String Format Numerik Standar
- String Format Numerik Kustom
- String Format Tanggal dan Waktu Standar
- String Format Tanggal dan Waktu Kustom
- String Format Rentang Waktu Standar
- String Format Rentang Waktu Kustom
- String Format Enumerasi
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 penampingan 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
format
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 metode AppendFormat(IFormatProvider, String, Object). Keduanya menggunakan konvensi pemformatan budaya Kerajaan English-United (en-GB). Yang pertama menyisipkan representasi string dari mata uang nilai Decimal dalam string hasil. Yang kedua menyisipkan nilai DateTime di dua tempat dalam string hasil, yang pertama hanya menyertakan 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 StringBuilder saat ini.
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:
{indeks [, panjang][: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 |
, panjang |
Jumlah minimum karakter dalam representasi string parameter. Jika positif, parameter selaras dengan kanan; jika negatif, diratakan kiri. |
: formatString |
String format standar atau kustom yang didukung oleh parameter . |
Nota
Untuk string format standar dan kustom yang digunakan dengan nilai tanggal dan waktu, lihat String Format Tanggal dan Waktu Standar dan 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 implementasi IFormatProvider yang dapat memberikan informasi pemformatan untuk objek di args
.
provider
dapat berupa salah satu hal berikut:
Objek CultureInfo yang menyediakan informasi pemformatan khusus budaya.
Objek NumberFormatInfo yang menyediakan informasi pemformatan khusus budaya untuk
arg0
jika merupakan nilai numerik.Objek DateTimeFormatInfo yang menyediakan informasi pemformatan khusus budaya untuk
arg0
jika merupakan nilai tanggal dan waktu.Implementasi IFormatProvider kustom yang menyediakan informasi pemformatan untuk
arg0
. Biasanya, implementasi seperti itu juga mengimplementasikan antarmuka ICustomFormatter.
Jika parameter provider
null
, informasi pemformatan diperoleh dari budaya saat ini.
arg0
mewakili objek yang akan diformat. Setiap item format dalam format
diganti dengan representasi string arg0
. Jika item format menyertakan formatString
dan arg0
mengimplementasikan antarmuka IFormattable, maka arg0.ToString(formatString, provider)
menentukan pemformatan. Jika tidak, arg0.ToString()
menentukan pemformatan.
Catatan Bagi Pemanggil
Di .NET Core dan di .NET Framework 4.0 dan versi yang lebih baru, ketika Anda membuat instans objek StringBuilder dengan memanggil konstruktor StringBuilder(Int32, Int32), panjang dan kapasitas instans StringBuilder dapat tumbuh di luar nilai properti MaxCapacity. Ini dapat terjadi terutama ketika Anda memanggil metode Append(String) dan AppendFormat(String, Object) untuk menambahkan string kecil.
Lihat juga
- Tipe Pemformatan di .NET
- Pemformatan Komposit
- Cara: Menentukan dan Menggunakan Penyedia Format Numerik Kustom
- String Format Numerik Standar
- String Format Numerik Kustom
- String Format Tanggal dan Waktu Standar
- String Format Tanggal dan Waktu Kustom
- String Format Rentang Waktu Standar
- String Format Rentang Waktu Kustom
- String Format Enumerasi
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 untuk diformat.
Mengembalikan
Referensi ke instans ini dengan format
ditambahkan. Setiap item format dalam format
digantikan oleh representasi string dari argumen objek yang sesuai.
Pengecualian
format
atau args
null
.
format
tidak valid.
-atau-
Indeks item format kurang dari 0 (nol), atau lebih besar dari atau sama dengan panjang array args
.
Panjang string yang diperluas akan melebihi MaxCapacity.
Contoh
Contoh berikut menunjukkan metode AppendFormat.
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 StringBuilder saat ini.
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:
{indeks [, panjang][: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 |
, panjang |
Jumlah minimum karakter dalam representasi string parameter. Jika positif, parameter selaras dengan kanan; jika negatif, diratakan kiri. |
: formatString |
String format standar atau kustom yang didukung oleh parameter . |
Nota
Untuk string format standar dan kustom yang digunakan dengan nilai tanggal dan waktu, lihat String Format Tanggal dan Waktu Standar dan 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 dalam format
diganti dengan representasi string objek yang sesuai di args
. Jika item format menyertakan formatString
dan objek terkait di args
mengimplementasikan antarmuka IFormattable, maka args[index].ToString(formatString, provider)
menentukan pemformatan. Jika tidak, args[index].ToString()
menentukan pemformatan.
Jika untai yang ditetapkan untuk format
adalah "Terima kasih atas sumbangan {0:####} kaleng makanan untuk organisasi amal kami." dan arg0
adalah bilangan bulat dengan nilai 10, nilai pengembaliannya 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 instans objek StringBuilder dengan memanggil konstruktor StringBuilder(Int32, Int32), panjang dan kapasitas instans StringBuilder dapat tumbuh di luar nilai properti MaxCapacity. Ini dapat terjadi terutama ketika Anda memanggil metode Append(String) dan AppendFormat(String, Object) untuk menambahkan string kecil.
Lihat juga
- Tipe Pemformatan di .NET
- Pemformatan Komposit
- String Format Numerik Standar
- String Format Numerik Kustom
- String Format Tanggal dan Waktu Standar
- String Format Tanggal dan Waktu Kustom
- String Format Rentang Waktu Standar
- String Format Rentang Waktu Kustom
- String Format Enumerasi
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 dalam format
digantikan oleh representasi string arg0
.
Pengecualian
format
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 metode AppendFormat.
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 StringBuilder saat ini.
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 string arg0
.
Sintaks item format adalah sebagai berikut:
{indeks [, panjang][: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 |
, panjang |
Jumlah minimum karakter dalam representasi string parameter. Jika positif, parameter selaras dengan kanan; jika negatif, diratakan kiri. |
: formatString |
String format standar atau kustom yang didukung oleh parameter . |
Nota
Untuk string format standar dan kustom yang digunakan dengan nilai tanggal dan waktu, lihat String Format Tanggal dan Waktu Standar dan 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 dalam format
diganti dengan representasi string arg0
. Jika item format menyertakan formatString
dan arg0
mengimplementasikan antarmuka IFormattable, maka arg0.ToString(formatString, null)
menentukan pemformatan. Jika tidak, arg0.ToString()
menentukan pemformatan.
Jika untai yang ditetapkan untuk format
adalah "Terima kasih atas sumbangan {0:####} kaleng makanan untuk organisasi amal kami." dan arg0
adalah bilangan bulat dengan nilai 10, nilai pengembaliannya 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 instans objek StringBuilder dengan memanggil konstruktor StringBuilder(Int32, Int32), panjang dan kapasitas instans StringBuilder dapat tumbuh di luar nilai properti MaxCapacity. Ini dapat terjadi terutama ketika Anda memanggil metode Append(String) dan AppendFormat(String, Object) untuk menambahkan string kecil.
Lihat juga
- Tipe Pemformatan di .NET
- Pemformatan Komposit
- String Format Numerik Standar
- String Format Numerik Kustom
- String Format Tanggal dan Waktu Standar
- String Format Tanggal dan Waktu Kustom
- String Format Rentang Waktu Standar
- String Format Rentang Waktu Kustom
- String Format Enumerasi
Berlaku untuk
AppendFormat(IFormatProvider, String, 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 argumen yang sesuai dalam rentang parameter menggunakan penyedia format tertentu.
public:
System::Text::StringBuilder ^ AppendFormat(IFormatProvider ^ provider, System::String ^ format, ReadOnlySpan<System::Object ^> args);
public System.Text.StringBuilder AppendFormat (IFormatProvider? provider, string format, scoped ReadOnlySpan<object?> args);
member this.AppendFormat : IFormatProvider * string * ReadOnlySpan<obj> -> System.Text.StringBuilder
Public Function AppendFormat (provider As IFormatProvider, format As String, args As ReadOnlySpan(Of Object)) As StringBuilder
Parameter
- provider
- IFormatProvider
Objek yang memasok informasi pemformatan khusus budaya.
- format
- String
String format komposit.
- args
- ReadOnlySpan<Object>
Rentang objek untuk diformat.
Mengembalikan
Referensi ke instans ini setelah operasi penampingan selesai.
Pengecualian
format
null
.
Panjang string yang diperluas akan melebihi MaxCapacity.
format
tidak valid.
-atau-
Indeks item format kurang dari 0 (nol), atau lebih besar dari atau sama dengan panjang rentang args
.
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
Tipe 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.
- format
- CompositeFormat
Sebuah CompositeFormat.
- arg0
- TArg0
Objek pertama yang akan diformat.
- arg1
- TArg1
Objek kedua yang akan diformat.
- arg2
- TArg2
Objek ketiga yang akan diformat.
Mengembalikan
Referensi ke instans ini setelah operasi penampingan selesai.
Pengecualian
format
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
Tipe objek pertama yang akan diformat.
- TArg1
Jenis objek kedua yang akan diformat.
Parameter
- provider
- IFormatProvider
Objek yang memasok informasi pemformatan khusus budaya.
- format
- CompositeFormat
Sebuah CompositeFormat.
- arg0
- TArg0
Objek pertama yang akan diformat.
- arg1
- TArg1
Objek kedua yang akan diformat.
Mengembalikan
Referensi ke instans ini setelah operasi penampingan selesai.
Pengecualian
format
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
Tipe objek pertama yang akan diformat.
Parameter
- provider
- IFormatProvider
Objek yang memasok informasi pemformatan khusus budaya.
- format
- CompositeFormat
Sebuah CompositeFormat.
- arg0
- TArg0
Objek pertama yang akan diformat.
Mengembalikan
Referensi ke instans ini setelah operasi penampingan selesai.
Pengecualian
format
null
.
Indeks item format lebih besar dari atau sama dengan jumlah argumen yang disediakan.