Cette documentation est archivée et n’est pas conservée.

Convert.ToDecimal, méthode (Double)

Mise à jour : novembre 2007

Convertit la valeur du nombre à virgule flottante double précision spécifié en un nombre Decimal équivalent.

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

public static decimal ToDecimal(
	double value
)
public static Decimal ToDecimal(
	double value
)
public static function ToDecimal(
	value : double
) : decimal

Paramètres

value
Type : System.Double
Nombre à virgule flottante double précision.

Valeur de retour

Type : System.Decimal
Nombre Decimal équivalant à la valeur de value.

ExceptionCondition
OverflowException

La valeur numérique de value est supérieure à MaxValue ou inférieure à MinValue.

La valeur Decimal retournée par cette méthode contient au maximum 15 chiffres significatifs. Si le paramètre value contient plus de 15 chiffres significatifs, il est arrondi à l'entier le plus proche. L'exemple suivant montre comment la méthode Convert.ToDecimal(Double) utilise l'arrondi à l'entier le plus proche pour retourner une valeur Decimal contenant 15 chiffres significatifs.

Console.WriteLine(Convert.ToDecimal(123456789012345500.12D));  // Displays 1234568000
Console.WriteLine(Convert.ToDecimal(123456789012346500.12D));  // Displays 1234568000

Console.WriteLine(Convert.ToDecimal(10030.12345678905D));      // Displays 10030.123456789 
Console.WriteLine(Convert.ToDecimal(10030.12345678915D));      // Displays 10030.1234567892


L'exemple de code suivant illustre la conversion d'une valeur Double en Decimal à l'aide de ToDecimal.

		public void ConvertDoubleDecimal(decimal decimalVal){
			
			double doubleVal;
			
			// Decimal to double conversion cannot overflow.
         doubleVal = System.Convert.ToDouble(decimalVal);
			System.Console.WriteLine("{0} as a double is: {1}",
					decimalVal, doubleVal);

			// Conversion from double to decimal can overflow.
			try 
         {
			   decimalVal = System.Convert.ToDecimal(doubleVal);
   			System.Console.WriteLine ("{0} as a decimal is: {1}",
	   			doubleVal, decimalVal);
			} 
			catch (System.OverflowException) {
				System.Console.WriteLine(
					"Overflow in double-to-double conversion.");
			}
			

		}


public void ConvertDoubleDecimal(System.Decimal decimalVal)
{
    double doubleVal;

    // Decimal to double conversion cannot overflow.
    doubleVal = System.Convert.ToDouble(decimalVal);
    System.Console.WriteLine("{0} as a double is: {1}", 
            System.Convert.ToString(decimalVal), 
            System.Convert.ToString(doubleVal));

    // Conversion from double to decimal can overflow.
    try
    {
    decimalVal = System.Convert.ToDecimal(doubleVal);
    System.Console.WriteLine("{0} as a decimal is: {1}", 
        System.Convert.ToString(doubleVal), 
        System.Convert.ToString(decimalVal));
    }
    catch (System.OverflowException exp) 
    {        
      System.Console.WriteLine("Overflow in double-to-decimal conversion.");
    }
} //ConvertDoubleDecimal


Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professionnel Édition x64, Windows XP Starter Edition, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98, Windows CE, Windows Mobile pour Smartphone, Windows Mobile pour Pocket PC, Xbox 360

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

.NET Framework

Pris en charge dans : 3.5, 3.0, 2.0, 1.1, 1.0

.NET Compact Framework

Pris en charge dans : 3.5, 2.0, 1.0

XNA Framework

Pris en charge dans : 2.0, 1.0
Afficher: