Ler em inglês

Partilhar via


String.Format Método

Definição

Converte o valor dos objetos em cadeias de caracteres com base nos formatos especificados e insere-os em outra cadeia de caracteres.

Se você for novo no método String.Format, consulte Introdução ao método String.Format para obter uma visão geral rápida.

Sobrecargas

Format(IFormatProvider, String, Object[])

Substitui os itens de formato em uma cadeia de caracteres pelas representações de cadeia de caracteres de objetos correspondentes em uma matriz especificada. Um parâmetro fornece informações de formatação específicas à cultura.

Format(IFormatProvider, String, Object, Object, Object)

Substitui os itens de formato em uma cadeia de caracteres pela representação de cadeia de caracteres de três objetos especificados. Um parâmetro fornece informações de formatação específicas à cultura.

Format(String, Object, Object, Object)

Substitui os itens de formato em uma cadeia de caracteres pela representação de cadeia de caracteres de três objetos especificados.

Format(IFormatProvider, String, Object, Object)

Substitui os itens de formato em uma cadeia de caracteres pela representação de cadeia de caracteres de dois objetos especificados. Um parâmetro fornece informações de formatação específicas à cultura.

Format(String, Object, Object)

Substitui os itens de formato em uma cadeia de caracteres pela representação de cadeia de caracteres de dois objetos especificados.

Format(IFormatProvider, CompositeFormat, ReadOnlySpan<Object>)

Substitui o item de formato ou itens em um CompositeFormat pela representação de cadeia de caracteres dos objetos correspondentes no formato especificado.

Format(IFormatProvider, String, Object)

Substitui o item de formato ou itens em uma cadeia de caracteres especificada pela representação de cadeia de caracteres do objeto correspondente. Um parâmetro fornece informações de formatação específicas à cultura.

Format(IFormatProvider, String, ReadOnlySpan<Object>)

Substitui os itens de formato em uma cadeia de caracteres pelas representações de cadeia de caracteres de objetos correspondentes em um intervalo especificado. Um parâmetro fornece informações de formatação específicas à cultura.

Format(String, ReadOnlySpan<Object>)

Substitui o item de formato em uma cadeia de caracteres especificada pela representação de cadeia de caracteres de um objeto correspondente em um intervalo especificado.

Format(String, Object[])

Substitui o item de formato em uma cadeia de caracteres especificada pela representação de cadeia de caracteres de um objeto correspondente em uma matriz especificada.

Format(String, Object)

Substitui um ou mais itens de formato em uma cadeia de caracteres pela representação de cadeia de caracteres de um objeto especificado.

Format(IFormatProvider, CompositeFormat, Object[])

Substitui o item de formato ou itens em um CompositeFormat pela representação de cadeia de caracteres dos objetos correspondentes no formato especificado.

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

Substitui o item de formato ou itens em um CompositeFormat pela representação de cadeia de caracteres dos objetos correspondentes no formato especificado.

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

Substitui o item de formato ou itens em um CompositeFormat pela representação de cadeia de caracteres dos objetos correspondentes no formato especificado.

Format<TArg0>(IFormatProvider, CompositeFormat, TArg0)

Substitui o item de formato ou itens em um CompositeFormat pela representação de cadeia de caracteres dos objetos correspondentes no formato especificado.

Comentários

Para obter mais informações sobre essa API, consulte comentários de API Suplementar para String.Format.

Format(IFormatProvider, String, Object[])

Origem:
String.Manipulation.cs
Origem:
String.Manipulation.cs
Origem:
String.Manipulation.cs

Substitui os itens de formato em uma cadeia de caracteres pelas representações de cadeia de caracteres de objetos correspondentes em uma matriz especificada. Um parâmetro fornece informações de formatação específicas à cultura.

C#
public static string Format (IFormatProvider provider, string format, params object[] args);
C#
public static string Format (IFormatProvider? provider, string format, params object?[] args);

Parâmetros

provider
IFormatProvider

Um objeto que fornece informações de formatação específicas da cultura.

format
String

Uma cadeia de caracteres de formato composto .

args
Object[]

Uma matriz de objetos que contém zero ou mais objetos a serem formatados.

Retornos

Uma cópia de format em que os itens de formato foram substituídos pela representação de cadeia de caracteres dos objetos correspondentes em args.

Exceções

format ou args é null.

format é inválido.

-ou-

O índice de um item de formato é menor que zero ou maior ou igual ao comprimento da matriz args.

Comentários

Importante

Em vez de chamar o método String.Format ou usar cadeias de caracteres de formato composto , você pode usar cadeias de caracteres interpoladas se o idioma der suporte a elas. Uma cadeia de caracteres interpolada é uma cadeia de caracteres que contém expressões interpoladas . Cada expressão interpolada é resolvida com o valor da expressão e incluída na cadeia de caracteres de resultado quando a cadeia de caracteres é atribuída. Para obter mais informações, consulte de interpolação de cadeia de caracteres (Referência de C#) e cadeias de caracteres interpoladas (Referência do Visual Basic).

Esse método usa o recurso de formatação composta para converter quatro ou mais expressões em suas representações de cadeia de caracteres e inserir essas representações em uma cadeia de caracteres. Ao executar a conversão, o método usa a formatação sensível à cultura ou um formatador personalizado. O método converte cada argumento em sua representação de cadeia de caracteres chamando seu método ToString(IFormatProvider) ou, se o item de formato correspondente do objeto incluir uma cadeia de caracteres de formato, chamando seu método ToString(String, IFormatProvider). Se esses métodos não existirem, ele chamará o método toString sem parâmetros do objeto.

No entanto, ao chamar o método String.Format, não é necessário se concentrar na sobrecarga específica que você deseja chamar. Em vez disso, você pode chamar o método com um objeto que fornece formatação personalizada ou sensível à cultura e uma cadeia de caracteres de formato composto que inclui um ou mais itens de formato. Você atribui um índice numérico a cada item de formato; o primeiro índice começa em 0. Além da cadeia de caracteres inicial, a chamada de método deve ter tantos argumentos adicionais quanto tiver valores de índice. Por exemplo, uma cadeia de caracteres cujos itens de formato têm índices de 0 e 1 deve ter dois argumentos; um com índices de 0 a 5 deve ter 6 argumentos. Em seguida, o compilador de idioma resolverá sua chamada de método para uma sobrecarga específica do método String.Format.

Para obter uma documentação mais detalhada sobre como usar o método String.Format, consulte Introdução ao método String.Format e Qual método eu chamo?.

Exemplo: formatação sensível à cultura

Este exemplo usa o método Format(IFormatProvider, String, Object[]) para exibir a representação de cadeia de caracteres de alguns valores de data e hora e valores numéricos usando várias culturas diferentes.

C#
string[] cultureNames = { "en-US", "fr-FR", "de-DE", "es-ES" };

DateTime dateToDisplay = new DateTime(2009, 9, 1, 18, 32, 0);
double value = 9164.32;

Console.WriteLine("Culture     Date                                Value\n");
foreach (string cultureName in cultureNames)
{
   System.Globalization.CultureInfo culture = new System.Globalization.CultureInfo(cultureName);
   string output = String.Format(culture, "{0,-11} {1,-35:D} {2:N}", 
                                 culture.Name, dateToDisplay, value);
   Console.WriteLine(output);
}    
// The example displays the following output:
//    Culture     Date                                Value
//    
//    en-US       Tuesday, September 01, 2009         9,164.32
//    fr-FR       mardi 1 septembre 2009              9 164,32
//    de-DE       Dienstag, 1. September 2009         9.164,32
//    es-ES       martes, 01 de septiembre de 2009    9.164,32

Confira também

Aplica-se a

.NET 9 e outras versões
Produto Versões
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 2.0, 2.1
UWP 10.0

Format(IFormatProvider, String, Object, Object, Object)

Origem:
String.Manipulation.cs
Origem:
String.Manipulation.cs
Origem:
String.Manipulation.cs

Substitui os itens de formato em uma cadeia de caracteres pela representação de cadeia de caracteres de três objetos especificados. Um parâmetro fornece informações de formatação específicas à cultura.

C#
public static string Format (IFormatProvider provider, string format, object arg0, object arg1, object arg2);
C#
public static string Format (IFormatProvider? provider, string format, object? arg0, object? arg1, object? arg2);

Parâmetros

provider
IFormatProvider

Um objeto que fornece informações de formatação específicas da cultura.

format
String

Uma cadeia de caracteres de formato composto .

arg0
Object

O primeiro objeto a ser formatado.

arg1
Object

O segundo objeto a ser formatado.

arg2
Object

O terceiro objeto a ser formatado.

Retornos

Uma cópia de format em que os itens de formato foram substituídos pelas representações de cadeia de caracteres de arg0, arg1e arg2.

Exceções

format é null.

format é inválido.

-ou-

O índice de um item de formato é menor que zero ou maior que dois.

Comentários

Importante

Em vez de chamar o método String.Format ou usar cadeias de caracteres de formato composto , você pode usar cadeias de caracteres interpoladas se o idioma der suporte a elas. Uma cadeia de caracteres interpolada é uma cadeia de caracteres que contém expressões interpoladas . Cada expressão interpolada é resolvida com o valor da expressão e incluída na cadeia de caracteres de resultado quando a cadeia de caracteres é atribuída. Para obter mais informações, consulte de interpolação de cadeia de caracteres (Referência de C#) e cadeias de caracteres interpoladas (Referência do Visual Basic).

Esse método usa o recurso de formatação composta para converter três expressões em suas representações de cadeia de caracteres e inserir essas representações em uma cadeia de caracteres. Ao executar a conversão, o método usa a formatação sensível à cultura ou um formatador personalizado. O método converte cada argumento em sua representação de cadeia de caracteres chamando seu método ToString(IFormatProvider) ou, se o item de formato correspondente do objeto incluir uma cadeia de caracteres de formato, chamando seu método ToString(String, IFormatProvider). Se esses métodos não existirem, ele chamará o método toString sem parâmetros do objeto.

No entanto, ao chamar o método String.Format, não é necessário se concentrar na sobrecarga específica que você deseja chamar. Em vez disso, você pode chamar o método com um objeto que fornece formatação personalizada ou sensível à cultura e uma cadeia de caracteres de formato composto que inclui um ou mais itens de formato. Você atribui um índice numérico a cada item de formato; o primeiro índice começa em 0. Além da cadeia de caracteres inicial, a chamada de método deve ter tantos argumentos adicionais quanto tiver valores de índice. Por exemplo, uma cadeia de caracteres cujos itens de formato têm índices de 0 e 1 deve ter dois argumentos; um com índices de 0 a 5 deve ter 6 argumentos. Em seguida, o compilador de idioma resolverá sua chamada de método para uma sobrecarga específica do método String.Format.

Para obter uma documentação mais detalhada sobre como usar o método String.Format, consulte Introdução ao método String.Format e Qual método eu chamo?.

Aplica-se a

.NET 9 e outras versões
Produto Versões
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.3, 1.4, 1.5, 1.6, 2.0, 2.1
UWP 10.0

Format(String, Object, Object, Object)

Origem:
String.Manipulation.cs
Origem:
String.Manipulation.cs
Origem:
String.Manipulation.cs

Substitui os itens de formato em uma cadeia de caracteres pela representação de cadeia de caracteres de três objetos especificados.

C#
public static string Format (string format, object arg0, object arg1, object arg2);
C#
public static string Format (string format, object? arg0, object? arg1, object? arg2);

Parâmetros

format
String

Uma cadeia de caracteres de formato composto .

arg0
Object

O primeiro objeto a ser formatado.

arg1
Object

O segundo objeto a ser formatado.

arg2
Object

O terceiro objeto a ser formatado.

Retornos

Uma cópia de format em que os itens de formato foram substituídos pelas representações de cadeia de caracteres de arg0, arg1e arg2.

Exceções

format é null.

format é inválido.

-ou-

O índice de um item de formato é menor que zero ou maior que dois.

Comentários

Importante

Em vez de chamar o método String.Format ou usar cadeias de caracteres de formato composto , você pode usar cadeias de caracteres interpoladas se o idioma der suporte a elas. Uma cadeia de caracteres interpolada é uma cadeia de caracteres que contém expressões interpoladas . Cada expressão interpolada é resolvida com o valor da expressão e incluída na cadeia de caracteres de resultado quando a cadeia de caracteres é atribuída. Para obter mais informações, consulte de interpolação de cadeia de caracteres (Referência de C#) e cadeias de caracteres interpoladas (Referência do Visual Basic).

Esse método usa o recurso de formatação composta para converter o valor de três expressões em suas representações de cadeia de caracteres e inserir essas representações em uma cadeia de caracteres.

No entanto, ao chamar o método String.Format, não é necessário se concentrar na sobrecarga específica que você deseja chamar. Em vez disso, você pode chamar o método com uma cadeia de caracteres de formato composto que inclui um ou mais itens de formato. Você atribui um índice numérico a cada item de formato; o primeiro índice começa em 0. Além da cadeia de caracteres inicial, a chamada de método deve ter tantos argumentos adicionais quanto tiver valores de índice. Por exemplo, uma cadeia de caracteres cujos itens de formato têm índices de 0 e 1 deve ter dois argumentos; um com índices de 0 a 5 deve ter 6 argumentos. Em seguida, o compilador de idioma resolverá sua chamada de método para uma sobrecarga específica do método String.Format.

Para obter uma documentação mais detalhada sobre como usar o método String.Format, consulte Introdução ao método String.Format e Qual método eu chamo?.

Exemplo: formatar três argumentos

Este exemplo usa o método Format(String, Object, Object, Object) para criar uma cadeia de caracteres que ilustra o resultado de uma operação de And booliana com dois valores inteiros. Observe que a cadeia de caracteres de formato inclui seis itens de formato, mas o método tem apenas três itens em sua lista de parâmetros, porque cada item é formatado de duas maneiras diferentes.

C#
string formatString = "    {0,10} ({0,8:X8})\n" + 
                      "And {1,10} ({1,8:X8})\n" + 
                      "  = {2,10} ({2,8:X8})";
int value1 = 16932;
int value2 = 15421;
string result = String.Format(formatString, 
                              value1, value2, value1 & value2);
Console.WriteLine(result);
// The example displays the following output:
//                16932 (00004224)
//       And      15421 (00003C3D)
//         =         36 (00000024)

Confira também

  • tipos de formatação no .NET
  • de Formatação Composta

Aplica-se a

.NET 9 e outras versões
Produto Versões
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.3, 1.4, 1.5, 1.6, 2.0, 2.1
UWP 10.0

Format(IFormatProvider, String, Object, Object)

Origem:
String.Manipulation.cs
Origem:
String.Manipulation.cs
Origem:
String.Manipulation.cs

Substitui os itens de formato em uma cadeia de caracteres pela representação de cadeia de caracteres de dois objetos especificados. Um parâmetro fornece informações de formatação específicas à cultura.

C#
public static string Format (IFormatProvider provider, string format, object arg0, object arg1);
C#
public static string Format (IFormatProvider? provider, string format, object? arg0, object? arg1);

Parâmetros

provider
IFormatProvider

Um objeto que fornece informações de formatação específicas da cultura.

format
String

Uma cadeia de caracteres de formato composto .

arg0
Object

O primeiro objeto a ser formatado.

arg1
Object

O segundo objeto a ser formatado.

Retornos

Uma cópia de format em que os itens de formato são substituídos pelas representações de cadeia de caracteres de arg0 e arg1.

Exceções

format é null.

format é inválido.

-ou-

O índice de um item de formato não é zero ou um.

Comentários

Importante

Em vez de chamar o método String.Format ou usar cadeias de caracteres de formato composto , você pode usar cadeias de caracteres interpoladas se o idioma der suporte a elas. Uma cadeia de caracteres interpolada é uma cadeia de caracteres que contém expressões interpoladas . Cada expressão interpolada é resolvida com o valor da expressão e incluída na cadeia de caracteres de resultado quando a cadeia de caracteres é atribuída. Para obter mais informações, consulte de interpolação de cadeia de caracteres (Referência de C#) e cadeias de caracteres interpoladas (Referência do Visual Basic).

Esse método usa o recurso de formatação composta para converter duas expressões em suas representações de cadeia de caracteres e inserir essas representações em uma cadeia de caracteres. Ao executar a conversão, o método usa a formatação sensível à cultura ou um formatador personalizado. O método converte cada argumento em sua representação de cadeia de caracteres chamando seu método ToString(IFormatProvider) ou, se o item de formato correspondente do objeto incluir uma cadeia de caracteres de formato, chamando seu método ToString(String, IFormatProvider). Se esses métodos não existirem, ele chamará o método toString sem parâmetros do objeto.

No entanto, ao chamar o método String.Format, não é necessário se concentrar na sobrecarga específica que você deseja chamar. Em vez disso, você pode chamar o método com um objeto que fornece formatação personalizada ou sensível à cultura e uma cadeia de caracteres de formato composto que inclui um ou mais itens de formato. Você atribui um índice numérico a cada item de formato; o primeiro índice começa em 0. Além da cadeia de caracteres inicial, a chamada de método deve ter tantos argumentos adicionais quanto tiver valores de índice. Por exemplo, uma cadeia de caracteres cujos itens de formato têm índices de 0 e 1 deve ter dois argumentos; um com índices de 0 a 5 deve ter 6 argumentos. Em seguida, o compilador de idioma resolverá sua chamada de método para uma sobrecarga específica do método String.Format.

Para obter uma documentação mais detalhada sobre como usar o método String.Format, consulte Introdução ao método String.Format e Qual método eu chamo?.

Aplica-se a

.NET 9 e outras versões
Produto Versões
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.3, 1.4, 1.5, 1.6, 2.0, 2.1
UWP 10.0

Format(String, Object, Object)

Origem:
String.Manipulation.cs
Origem:
String.Manipulation.cs
Origem:
String.Manipulation.cs

Substitui os itens de formato em uma cadeia de caracteres pela representação de cadeia de caracteres de dois objetos especificados.

C#
public static string Format (string format, object arg0, object arg1);
C#
public static string Format (string format, object? arg0, object? arg1);

Parâmetros

format
String

Uma cadeia de caracteres de formato composto .

arg0
Object

O primeiro objeto a ser formatado.

arg1
Object

O segundo objeto a ser formatado.

Retornos

Uma cópia de format em que os itens de formato são substituídos pelas representações de cadeia de caracteres de arg0 e arg1.

Exceções

format é null.

format é inválido.

-ou-

O índice de um item de formato não é zero ou um.

Comentários

Importante

Em vez de chamar o método String.Format ou usar cadeias de caracteres de formato composto , você pode usar cadeias de caracteres interpoladas se o idioma der suporte a elas. Uma cadeia de caracteres interpolada é uma cadeia de caracteres que contém expressões interpoladas . Cada expressão interpolada é resolvida com o valor da expressão e incluída na cadeia de caracteres de resultado quando a cadeia de caracteres é atribuída. Para obter mais informações, consulte de interpolação de cadeia de caracteres (Referência de C#) e cadeias de caracteres interpoladas (Referência do Visual Basic).

Esse método usa o recurso de formatação composta para converter o valor de duas expressões em suas representações de cadeia de caracteres e inserir essas representações em uma cadeia de caracteres.

No entanto, ao chamar o método String.Format, não é necessário se concentrar na sobrecarga específica que você deseja chamar. Em vez disso, você pode chamar o método com uma cadeia de caracteres de formato composto que inclui um ou mais itens de formato. Você atribui um índice numérico a cada item de formato; o primeiro índice começa em 0. Além da cadeia de caracteres inicial, a chamada de método deve ter tantos argumentos adicionais quanto tiver valores de índice. Por exemplo, uma cadeia de caracteres cujos itens de formato têm índices de 0 e 1 deve ter dois argumentos; um com índices de 0 a 5 deve ter 6 argumentos. Em seguida, o compilador de idioma resolverá sua chamada de método para uma sobrecarga específica do método String.Format.

Para obter uma documentação mais detalhada sobre como usar o método String.Format, consulte Introdução ao método String.Format e Qual método eu chamo?.

Exemplo: formatar dois argumentos

Este exemplo usa o método Format(String, Object, Object) para exibir dados de tempo e temperatura armazenados em um objeto Dictionary<TKey,TValue> genérico. Observe que a cadeia de caracteres de formato tem três itens de formato, embora haja apenas dois objetos para formatar. Isso ocorre porque o primeiro objeto na lista (um valor de data e hora) é usado por dois itens de formato: o primeiro item de formato exibe a hora e o segundo exibe a data.

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

Console.WriteLine("Temperature Information:\n");
string output;   
foreach (var item in temperatureInfo)
{
   output = String.Format("Temperature at {0,8:t} on {0,9:d}: {1,5:N1}°F", 
                          item.Key, item.Value);
   Console.WriteLine(output);
}
// The example displays output like the following:
//       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

Confira também

Aplica-se a

.NET 9 e outras versões
Produto Versões
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.3, 1.4, 1.5, 1.6, 2.0, 2.1
UWP 10.0

Format(IFormatProvider, CompositeFormat, ReadOnlySpan<Object>)

Origem:
String.Manipulation.cs
Origem:
String.Manipulation.cs

Substitui o item de formato ou itens em um CompositeFormat pela representação de cadeia de caracteres dos objetos correspondentes no formato especificado.

C#
public static string Format (IFormatProvider? provider, System.Text.CompositeFormat format, ReadOnlySpan<object?> args);
C#
public static string Format (IFormatProvider? provider, System.Text.CompositeFormat format, scoped ReadOnlySpan<object?> args);

Parâmetros

provider
IFormatProvider

Um objeto que fornece informações de formatação específicas da cultura.

args
ReadOnlySpan<Object>

Um intervalo de objetos a serem formatados.

Retornos

A cadeia de caracteres formatada.

Exceções

format é null.

O índice de um item de formato é maior ou igual ao número de argumentos fornecidos.

Aplica-se a

.NET 9 e .NET 8
Produto Versões
.NET 8, 9

Format(IFormatProvider, String, Object)

Origem:
String.Manipulation.cs
Origem:
String.Manipulation.cs
Origem:
String.Manipulation.cs

Substitui o item de formato ou itens em uma cadeia de caracteres especificada pela representação de cadeia de caracteres do objeto correspondente. Um parâmetro fornece informações de formatação específicas à cultura.

C#
public static string Format (IFormatProvider provider, string format, object arg0);
C#
public static string Format (IFormatProvider? provider, string format, object? arg0);

Parâmetros

provider
IFormatProvider

Um objeto que fornece informações de formatação específicas da cultura.

format
String

Uma cadeia de caracteres de formato composto .

arg0
Object

O objeto a ser formatado.

Retornos

Uma cópia de format em que o item de formato ou itens foram substituídos pela representação de cadeia de caracteres de arg0.

Exceções

format é null.

format é inválido.

-ou-

O índice de um item de formato não é zero.

Comentários

Importante

Em vez de chamar o método String.Format ou usar cadeias de caracteres de formato composto , você pode usar cadeias de caracteres interpoladas se o idioma der suporte a elas. Uma cadeia de caracteres interpolada é uma cadeia de caracteres que contém expressões interpoladas . Cada expressão interpolada é resolvida com o valor da expressão e incluída na cadeia de caracteres de resultado quando a cadeia de caracteres é atribuída. Para obter mais informações, consulte de interpolação de cadeia de caracteres (Referência de C#) e cadeias de caracteres interpoladas (Referência do Visual Basic).

Esse método usa o recurso de formatação composta para converter o valor de uma expressão em sua representação de cadeia de caracteres e inserir essa representação em uma cadeia de caracteres. Ao executar a conversão, o método usa a formatação sensível à cultura ou um formatador personalizado. O método converte em sua representação de cadeia de caracteres chamando seu método ToString(IFormatProvider) ou, se o item de formato correspondente do objeto incluir uma cadeia de caracteres de formato, chamando seu método ToString(String, IFormatProvider). Se esses métodos não existirem, ele chamará o método toString sem parâmetros do objeto.

No entanto, ao chamar o método String.Format, não é necessário se concentrar na sobrecarga específica que você deseja chamar. Em vez disso, você pode chamar o método com um objeto que fornece formatação personalizada ou sensível à cultura e uma cadeia de caracteres de formato composto que inclui um ou mais itens de formato. Você atribui um índice numérico a cada item de formato; o primeiro índice começa em 0. Além da cadeia de caracteres inicial, a chamada de método deve ter tantos argumentos adicionais quanto tiver valores de índice. Por exemplo, uma cadeia de caracteres cujos itens de formato têm índices de 0 e 1 deve ter dois argumentos; um com índices de 0 a 5 deve ter 6 argumentos. Em seguida, o compilador de idioma resolverá sua chamada de método para uma sobrecarga específica do método String.Format.

Para obter uma documentação mais detalhada sobre como usar o método String.Format, consulte Introdução ao método String.Format e Qual método eu chamo?.

Aplica-se a

.NET 9 e outras versões
Produto Versões
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.3, 1.4, 1.5, 1.6, 2.0, 2.1
UWP 10.0

Format(IFormatProvider, String, ReadOnlySpan<Object>)

Substitui os itens de formato em uma cadeia de caracteres pelas representações de cadeia de caracteres de objetos correspondentes em um intervalo especificado. Um parâmetro fornece informações de formatação específicas à cultura.

C#
public static string Format (IFormatProvider? provider, string format, scoped ReadOnlySpan<object?> args);

Parâmetros

provider
IFormatProvider

Um objeto que fornece informações de formatação específicas da cultura.

format
String

Uma cadeia de caracteres de formato composto .

args
ReadOnlySpan<Object>

Um intervalo de objeto que contém zero ou mais objetos a serem formatados.

Retornos

Uma cópia de format em que os itens de formato foram substituídos pela representação de cadeia de caracteres dos objetos correspondentes em args.

Aplica-se a

.NET 9
Produto Versões
.NET 9

Format(String, ReadOnlySpan<Object>)

Substitui o item de formato em uma cadeia de caracteres especificada pela representação de cadeia de caracteres de um objeto correspondente em um intervalo especificado.

C#
public static string Format (string format, scoped ReadOnlySpan<object?> args);

Parâmetros

format
String

Uma cadeia de caracteres de formato composto .

args
ReadOnlySpan<Object>

Um intervalo de objeto que contém zero ou mais objetos a serem formatados.

Retornos

Uma cópia de format em que os itens de formato foram substituídos pela representação de cadeia de caracteres dos objetos correspondentes em args.

Aplica-se a

.NET 9
Produto Versões
.NET 9

Format(String, Object[])

Origem:
String.Manipulation.cs
Origem:
String.Manipulation.cs
Origem:
String.Manipulation.cs

Substitui o item de formato em uma cadeia de caracteres especificada pela representação de cadeia de caracteres de um objeto correspondente em uma matriz especificada.

C#
public static string Format (string format, params object[] args);
C#
public static string Format (string format, params object?[] args);

Parâmetros

format
String

Uma cadeia de caracteres de formato composto .

args
Object[]

Uma matriz de objetos que contém zero ou mais objetos a serem formatados.

Retornos

Uma cópia de format em que os itens de formato foram substituídos pela representação de cadeia de caracteres dos objetos correspondentes em args.

Exceções

format ou args é null.

format é inválido.

-ou-

O índice de um item de formato é menor que zero ou maior ou igual ao comprimento da matriz args.

Comentários

Importante

Em vez de chamar o método String.Format ou usar cadeias de caracteres de formato composto , você pode usar cadeias de caracteres interpoladas se o idioma der suporte a elas. Uma cadeia de caracteres interpolada é uma cadeia de caracteres que contém expressões interpoladas . Cada expressão interpolada é resolvida com o valor da expressão e incluída na cadeia de caracteres de resultado quando a cadeia de caracteres é atribuída. Para obter mais informações, consulte de interpolação de cadeia de caracteres (Referência de C#) e cadeias de caracteres interpoladas (Referência do Visual Basic).

Esse método usa o recurso de formatação composta para converter o valor de quatro ou mais expressões em suas representações de cadeia de caracteres e inserir essas representações em uma cadeia de caracteres. Como o parâmetro args é marcado com o atributo System.ParamArrayAttribute, você pode passar os objetos para o método como argumentos individuais ou como uma matriz Object.

No entanto, ao chamar o método String.Format, não é necessário se concentrar na sobrecarga específica que você deseja chamar. Em vez disso, você pode chamar o método com uma cadeia de caracteres de formato composto que inclui um ou mais itens de formato. Você atribui um índice numérico a cada item de formato; o primeiro índice começa em 0. Além da cadeia de caracteres inicial, a chamada de método deve ter tantos argumentos adicionais quanto tiver valores de índice. Por exemplo, uma cadeia de caracteres cujos itens de formato têm índices de 0 e 1 deve ter dois argumentos; um com índices de 0 a 5 deve ter 6 argumentos. Em seguida, o compilador de idioma resolverá sua chamada de método para uma sobrecarga específica do método String.Format.

Para obter uma documentação mais detalhada sobre como usar o método String.Format, consulte Introdução ao método String.Format e Qual método eu chamo?.

Exemplo: formatar mais de três argumentos

Este exemplo cria uma cadeia de caracteres que contém dados sobre a temperatura alta e baixa em uma data específica. A cadeia de caracteres de formato composto tem cinco itens de formato no exemplo C# e seis no exemplo do Visual Basic. Dois dos itens de formato definem a largura da representação de cadeia de caracteres do valor correspondente e o primeiro item de formato também inclui uma cadeia de caracteres de formato de data e hora padrão.

C#
DateTime date1 = new DateTime(2009, 7, 1);
TimeSpan hiTime = new TimeSpan(14, 17, 32);
decimal hiTemp = 62.1m; 
TimeSpan loTime = new TimeSpan(3, 16, 10);
decimal loTemp = 54.8m; 

string result1 = String.Format("Temperature on {0:d}:\n{1,11}: {2} degrees (hi)\n{3,11}: {4} degrees (lo)", 
                               date1, hiTime, hiTemp, loTime, loTemp);
Console.WriteLine(result1);
Console.WriteLine();
     
string result2 = String.Format("Temperature on {0:d}:\n{1,11}: {2} degrees (hi)\n{3,11}: {4} degrees (lo)", 
                               new object[] { date1, hiTime, hiTemp, loTime, loTemp });
Console.WriteLine(result2);
// The example displays output like the following:
//       Temperature on 7/1/2009:
//          14:17:32: 62.1 degrees (hi)
//          03:16:10: 54.8 degrees (lo)
//       Temperature on 7/1/2009:
//          14:17:32: 62.1 degrees (hi)
//          03:16:10: 54.8 degrees (lo)

Você também pode passar os objetos para serem formatados como uma matriz e não como uma lista de argumentos.

C#
using System;

public class CityInfo
{
   public CityInfo(String name, int population, Decimal area, int year)
   {
      this.Name = name;
      this.Population = population;
      this.Area = area;
      this.Year = year;
   }
   
   public readonly String Name; 
   public readonly int Population;
   public readonly Decimal Area;
   public readonly int Year;
}

public class Example
{
   public static void Main()
   {
      CityInfo nyc2010 = new CityInfo("New York", 8175133, 302.64m, 2010);
      ShowPopulationData(nyc2010);
      CityInfo sea2010 = new CityInfo("Seattle", 608660, 83.94m, 2010);      
      ShowPopulationData(sea2010); 
   }

   private static void ShowPopulationData(CityInfo city)
   {
      object[] args = { city.Name, city.Year, city.Population, city.Area };
      String result = String.Format("{0} in {1}: Population {2:N0}, Area {3:N1} sq. feet", 
                                    args);
      Console.WriteLine(result); 
   }
}
// The example displays the following output:
//       New York in 2010: Population 8,175,133, Area 302.6 sq. feet
//       Seattle in 2010: Population 608,660, Area 83.9 sq. feet

Confira também

Aplica-se a

.NET 9 e outras versões
Produto Versões
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 2.0, 2.1
UWP 10.0

Format(String, Object)

Origem:
String.Manipulation.cs
Origem:
String.Manipulation.cs
Origem:
String.Manipulation.cs

Substitui um ou mais itens de formato em uma cadeia de caracteres pela representação de cadeia de caracteres de um objeto especificado.

C#
public static string Format (string format, object arg0);
C#
public static string Format (string format, object? arg0);

Parâmetros

format
String

Uma cadeia de caracteres de formato composto .

arg0
Object

O objeto a ser formatado.

Retornos

Uma cópia de format em que todos os itens de formato são substituídos pela representação de cadeia de caracteres de arg0.

Exceções

format é null.

O item de formato em format é inválido.

-ou-

O índice de um item de formato não é zero.

Comentários

Importante

Em vez de chamar o método String.Format ou usar cadeias de caracteres de formato composto , você pode usar cadeias de caracteres interpoladas se o idioma der suporte a elas. Uma cadeia de caracteres interpolada é uma cadeia de caracteres que contém expressões interpoladas . Cada expressão interpolada é resolvida com o valor da expressão e incluída na cadeia de caracteres de resultado quando a cadeia de caracteres é atribuída. Para obter mais informações, consulte de interpolação de cadeia de caracteres (Referência de C#) e cadeias de caracteres interpoladas (Referência do Visual Basic).

Esse método usa o recurso de formatação composta para converter o valor de uma expressão em sua representação de cadeia de caracteres e inserir essa representação em uma cadeia de caracteres.

No entanto, ao chamar o método String.Format, não é necessário se concentrar na sobrecarga específica que você deseja chamar. Em vez disso, você pode chamar o método com uma cadeia de caracteres de formato composto que inclui um ou mais itens de formato. Você atribui um índice numérico a cada item de formato; o primeiro índice começa em 0. Além da cadeia de caracteres inicial, a chamada de método deve ter tantos argumentos adicionais quanto tiver valores de índice. Por exemplo, uma cadeia de caracteres cujos itens de formato têm índices de 0 e 1 deve ter dois argumentos; um com índices de 0 a 5 deve ter 6 argumentos. Em seguida, o compilador de idioma resolverá sua chamada de método para uma sobrecarga específica do método String.Format.

Para obter uma documentação mais detalhada sobre como usar o método String.Format, consulte Introdução ao método String.Format e Qual método eu chamo?.

Exemplo: Formatação de um único argumento

O exemplo a seguir usa o método Format(String, Object) para inserir a idade de um indivíduo no meio de uma cadeia de caracteres.

C#
DateTime birthdate = new DateTime(1993, 7, 28);
DateTime[] dates = { new DateTime(1993, 8, 16), 
                     new DateTime(1994, 7, 28), 
                     new DateTime(2000, 10, 16), 
                     new DateTime(2003, 7, 27), 
                     new DateTime(2007, 5, 27) };

foreach (DateTime dateValue in dates)
{
   TimeSpan interval = dateValue - birthdate;
   // Get the approximate number of years, without accounting for leap years.
   int years = ((int) interval.TotalDays) / 365;
   // See if adding the number of years exceeds dateValue.
   string output;
   if (birthdate.AddYears(years) <= dateValue) {
      output = String.Format("You are now {0} years old.", years);
      Console.WriteLine(output);
   }   
   else {
      output = String.Format("You are now {0} years old.", years - 1);
      Console.WriteLine(output);
   }      
}
// The example displays the following output:
//       You are now 0 years old.
//       You are now 1 years old.
//       You are now 7 years old.
//       You are now 9 years old.
//       You are now 13 years old.

Confira também

Aplica-se a

.NET 9 e outras versões
Produto Versões
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.3, 1.4, 1.5, 1.6, 2.0, 2.1
UWP 10.0

Format(IFormatProvider, CompositeFormat, Object[])

Origem:
String.Manipulation.cs
Origem:
String.Manipulation.cs

Substitui o item de formato ou itens em um CompositeFormat pela representação de cadeia de caracteres dos objetos correspondentes no formato especificado.

C#
public static string Format (IFormatProvider? provider, System.Text.CompositeFormat format, params object?[] args);

Parâmetros

provider
IFormatProvider

Um objeto que fornece informações de formatação específicas da cultura.

args
Object[]

Uma matriz de objetos a serem formatados.

Retornos

A cadeia de caracteres formatada.

Exceções

format ou args é null.

O índice de um item de formato é maior ou igual ao número de argumentos fornecidos.

Aplica-se a

.NET 9 e .NET 8
Produto Versões
.NET 8, 9

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

Origem:
String.Manipulation.cs
Origem:
String.Manipulation.cs

Substitui o item de formato ou itens em um CompositeFormat pela representação de cadeia de caracteres dos objetos correspondentes no formato especificado.

C#
public static string Format<TArg0,TArg1,TArg2> (IFormatProvider? provider, System.Text.CompositeFormat format, TArg0 arg0, TArg1 arg1, TArg2 arg2);

Parâmetros de tipo

TArg0

O tipo do primeiro objeto a ser formatado.

TArg1

O tipo do segundo objeto a ser formatado.

TArg2

O tipo do terceiro objeto a ser formatado.

Parâmetros

provider
IFormatProvider

Um objeto que fornece informações de formatação específicas da cultura.

arg0
TArg0

O primeiro objeto a ser formatado.

arg1
TArg1

O segundo objeto a ser formatado.

arg2
TArg2

O terceiro objeto a ser formatado.

Retornos

A cadeia de caracteres formatada.

Exceções

format é null.

O índice de um item de formato é maior ou igual ao número de argumentos fornecidos.

Aplica-se a

.NET 9 e .NET 8
Produto Versões
.NET 8, 9

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

Origem:
String.Manipulation.cs
Origem:
String.Manipulation.cs

Substitui o item de formato ou itens em um CompositeFormat pela representação de cadeia de caracteres dos objetos correspondentes no formato especificado.

C#
public static string Format<TArg0,TArg1> (IFormatProvider? provider, System.Text.CompositeFormat format, TArg0 arg0, TArg1 arg1);

Parâmetros de tipo

TArg0

O tipo do primeiro objeto a ser formatado.

TArg1

O tipo do segundo objeto a ser formatado.

Parâmetros

provider
IFormatProvider

Um objeto que fornece informações de formatação específicas da cultura.

arg0
TArg0

O primeiro objeto a ser formatado.

arg1
TArg1

O segundo objeto a ser formatado.

Retornos

A cadeia de caracteres formatada.

Exceções

format é null.

O índice de um item de formato é maior ou igual ao número de argumentos fornecidos.

Aplica-se a

.NET 9 e .NET 8
Produto Versões
.NET 8, 9

Format<TArg0>(IFormatProvider, CompositeFormat, TArg0)

Origem:
String.Manipulation.cs
Origem:
String.Manipulation.cs

Substitui o item de formato ou itens em um CompositeFormat pela representação de cadeia de caracteres dos objetos correspondentes no formato especificado.

C#
public static string Format<TArg0> (IFormatProvider? provider, System.Text.CompositeFormat format, TArg0 arg0);

Parâmetros de tipo

TArg0

O tipo do primeiro objeto a ser formatado.

Parâmetros

provider
IFormatProvider

Um objeto que fornece informações de formatação específicas da cultura.

arg0
TArg0

O primeiro objeto a ser formatado.

Retornos

A cadeia de caracteres formatada.

Exceções

format é null.

O índice de um item de formato é maior ou igual ao número de argumentos fornecidos.

Aplica-se a

.NET 9 e .NET 8
Produto Versões
.NET 8, 9