Informations
Le sujet que vous avez demandé est indiqué ci-dessous. Toutefois, ce sujet ne figure pas dans la bibliothèque.

IFormattable.ToString, méthode

Met en forme la valeur de l'instance actuelle à l'aide du format spécifié.

Espace de noms :  System
Assembly :  mscorlib (dans mscorlib.dll)

string ToString(
	string format,
	IFormatProvider formatProvider
)

Paramètres

format
Type : System.String
Format à utiliser.
ou
Référence null (Nothing en Visual Basic) pour utiliser le format par défaut défini pour le type de l'implémentation IFormattable.
formatProvider
Type : System.IFormatProvider
Fournisseur à utiliser pour mettre en forme la valeur.
ou
Référence null (Nothing en Visual Basic) pour obtenir les informations de mise en forme des nombres à partir des paramètres régionaux définis dans le système d'exploitation.

Valeur de retour

Type : System.String
Valeur de l'instance actuelle au format spécifié.

La méthode ToString convertit une valeur en représentation sous forme de chaîne qui peut être exprimée de plusieurs façons. Son format précis dépend de symboles spécifiques ou d'un ordre spécifié défini par les cultures, les professions ou les industries spécifiques. Vous pouvez appeler la méthode directement. Il est également appelé automatiquement par les méthodes Convert.ToString(Object) et Convert.ToString(Object, IFormatProvider), et par des méthodes qui utilisent la fonctionnalité de mise en forme dans le .NET Framework telles que String.Format(String, Object[]), Console.WriteLine(String, Object[]), et StringBuilder.AppendFormat(String, Object[]). (Pour plus d'informations, consultez Mise en forme composite.)

Les méthodes de mise en forme composite appellent la méthode ToString une fois pour chaque élément de mise en forme dans une chaîne de format. Les paramètres passés à la méthode dépendent de la méthode de mise en forme spécifique qui est appelée et du contenu de l'élément de mise en forme, comme suit :

  • Si l'élément de mise en forme n'inclut pas de chaîne de mise en forme (par exemple, si l'élément de mise en forme est simplement {0}), null est considéré comme valeur du paramètre System.String.

  • Si l'élément de mise en forme inclut une chaîne de mise en forme (par exemple, {0:G}), cette chaîne de mise en forme est passée comme valeur du paramètre System.String.

  • Si l'appel de méthode d'origine n'inclut pas de paramètre System.IFormatProvider, CultureInfo.CurrentCulture est passé comme valeur du paramètre System.IFormatProvider.

  • Si l'appel de méthode d'origine inclut un paramètre System.IFormatProvider, le fournisseur fourni dans l'appel de méthode est passé comme valeur du paramètre System.IFormatProvider.

RemarqueRemarque

L'implémentation de ToString d'un objet est appelée par les méthodes de mise en forme composite uniquement si un fournisseur de format ICustomFormatter ne leur est pas passé, ou si la méthode Format du fournisseur de format personnalisé retourne null.

Le .NET Framework inclut trois fournisseurs de format, qui implémentent tous l'interface IFormatProvider :

  • NumberFormatInfo fournit des informations de mise en forme des nombres, telles que les caractères à utiliser comme séparateurs décimaux et de groupes, ainsi que l'orthographe et le positionnement des symboles monétaires dans les valeurs monétaires.

  • DateTimeFormatInfo fournit des informations de mise en forme de la date et de l'heure, telles que la position du mois, du jour et de l'année dans le modèle de date.

  • CultureInfo contient les informations de mise en forme par défaut dans une culture spécifique, telles que les informations de mise en forme des nombres, ainsi que de la date et de l'heure.

De plus, vous pouvez définir votre propre fournisseur de format personnalisé.

Remarques à l'attention des implémenteurs

La méthode ToString doit prendre en charge le spécificateur de format « G » (général). Outre le spécificateur « G », la classe peut définir la liste des spécificateurs de format qu'elle prend en charge. De plus, la classe doit être préparée à gérer un spécificateur de format qui est null. Pour plus d'informations sur la mise en forme et les codes de mise en forme, consultez Mise en forme des types.

L'exemple suivant montre une classe Temperature qu'implémente la méthode ToString. Cet exemple de code fait partie d'un exemple plus complet fourni pour la classe IFormattable.


using System;
using System.Globalization;

public class Temperature : IFormattable
{
   private decimal temp;

   public Temperature(decimal temperature)
   {
      if (temperature < -273.15m) 
        throw new ArgumentOutOfRangeException(String.Format("{0} is less than absolute zero.", 
                                              temperature));
      this.temp = temperature;
   }

   public decimal Celsius
   {
      get { return temp; }
   }

   public decimal Fahrenheit
   {
      get { return temp * 9 / 5 + 32; }
   }

   public decimal Kelvin
   {
      get { return temp + 273.15m; }
   }

   public override string ToString()
   {
      return this.ToString("G", CultureInfo.CurrentCulture);
   }

   public string ToString(string format)
   {
      return this.ToString(format, CultureInfo.CurrentCulture);
   }

   public string ToString(string format, IFormatProvider provider) 
   {
      if (String.IsNullOrEmpty(format)) format = "G";
      if (provider == null) provider = CultureInfo.CurrentCulture;

      switch (format.ToUpperInvariant())
      {
         case "G":
         case "C":
            return temp.ToString("F2", provider) + " °C"; 
         case "F":
            return Fahrenheit.ToString("F2", provider) + " °F";
         case "K":
            return Kelvin.ToString("F2", provider) + " K";
         default:
            throw new FormatException(String.Format("The {0} format string is not supported.", format));
      }
   }
}


.NET Framework

Pris en charge dans : 4.5.2, 4.5.1, 4.5, 4, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework Client Profile

Pris en charge dans : 4, 3.5 SP1

Bibliothèque de classes portable

Pris en charge dans : Bibliothèque de classes portable

.NET pour les applications du Windows Store

Pris en charge dans : Windows 8

.NET pour les applications Windows Phone

Pris en charge dans : Windows Phone 8, Silverlight 8.1

Windows Phone 8.1, Windows Phone 8, Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (rôle principal du serveur non pris en charge), Windows Server 2008 R2 (rôle principal du serveur pris en charge avec SP1 ou version ultérieure ; Itanium non pris en charge)

Le .NET Framework ne prend pas en charge toutes les versions de chaque plateforme. Pour obtenir la liste des versions prises en charge, consultez Configuration requise du .NET Framework.

Ajouts de la communauté

Afficher:
© 2014 Microsoft