Decimal.ToUInt64(Decimal) Decimal.ToUInt64(Decimal) Decimal.ToUInt64(Decimal) Decimal.ToUInt64(Decimal) Method

Definición

Importante

Esta API no es conforme a CLS.

Convierte el valor del Decimal especificado en el entero de 64 bits sin signo equivalente.Converts the value of the specified Decimal to the equivalent 64-bit unsigned integer.

public:
 static System::UInt64 ToUInt64(System::Decimal d);
[System.CLSCompliant(false)]
public static ulong ToUInt64 (decimal d);
static member ToUInt64 : decimal -> uint64
Public Shared Function ToUInt64 (d As Decimal) As ULong

Parámetros

d
Decimal Decimal Decimal Decimal

Número decimal que se va a convertir.The decimal number to convert.

Devoluciones

Entero de 64 bits sin signo que equivale al valor de d.A 64-bit unsigned integer equivalent to the value of d.

Excepciones

d es negativo o mayor que MaxValue.d is negative or greater than MaxValue.

Ejemplos

En el ejemplo siguiente se ToUInt64 usa el método para convertir números UInt64 decimales en valores.The following example uses the ToUInt64 method to convert decimal numbers to UInt64 values.

using System;

class Example
{
   public static void Main( )
   {
      decimal[] values = { 123m, new Decimal(123000, 0, 0, false, 3), 
                           123.999m, 18446744073709551615.999m, 
                           18446744073709551616m, 9223372036854775807.999m, 
                           9223372036854775808m, -0.999m, -1m, 
                           -9223372036854775808.999m, 
                           -9223372036854775809m };
                     
      foreach (var value in values) {
         try {             
            ulong number = Decimal.ToUInt64(value);
            Console.WriteLine("{0} --> {1}", value, number);       
         }
         catch (OverflowException e)
         {
             Console.WriteLine("{0}: {1}", e.GetType().Name, value);
         }   
      }
   }
}
// The example displays the following output:
//     123 --> 123
//     123.000 --> 123
//     123.999 --> 123
//     18446744073709551615.999 --> 18446744073709551615
//     OverflowException: 18446744073709551616
//     9223372036854775807.999 --> 9223372036854775807
//     9223372036854775808 --> 9223372036854775808
//     -0.999 --> 0
//     OverflowException: -1
//     OverflowException: -9223372036854775808.999
//     OverflowException: -9223372036854775809
Module Example
   Public Sub Main()
      Dim values() As Decimal = { 123d, New Decimal(123000, 0, 0, false, 3), 
                                  123.999d, 18446744073709551615.999d, 
                                  18446744073709551616d, 9223372036854775807.999d, 
                                  9223372036854775808d, -0.999d, -1d, 
                                  -9223372036854775808.999d, 
                                  -9223372036854775809d }

      For Each value In values
         Try
            Dim number As ULong = Decimal.ToUInt64(value)
            Console.WriteLine("{0} --> {1}", value, number)       
         Catch e As OverflowException
             Console.WriteLine("{0}: {1}", e.GetType().Name, value)
         End Try   
      Next
   End Sub
End Module
' The example displays the following output:
'     123 --> 123
'     123.000 --> 123
'     123.999 --> 123
'     18446744073709551615.999 --> 18446744073709551615
'     OverflowException: 18446744073709551616
'     9223372036854775807.999 --> 9223372036854775807
'     9223372036854775808 --> 9223372036854775808
'     -0.999 --> 0
'     OverflowException: -1
'     OverflowException: -9223372036854775808.999
'     OverflowException: -9223372036854775809

Comentarios

El valor devuelto es la parte entera del valor decimal; los dígitos fraccionarios se truncan.The return value is the integral part of the decimal value; fractional digits are truncated.

También puede convertir un Decimal valor en un entero de 64 bits sin signo mediante el operador de Explicit asignación.You can also convert a Decimal value to an 64-bit unsigned integer by using the Explicit assignment operator. Dado que el operador realiza una conversión de restricción, debe utilizar un operador de conversión C# en o una función de conversión en Visual Basic.Because the operator performs a narrowing conversion, you must use a casting operator in C# or a conversion function in Visual Basic.

Se aplica a

Consulte también: