# Decimal.ToInt64(Decimal)Decimal.ToInt64(Decimal)Decimal.ToInt64(Decimal)Decimal.ToInt64(Decimal) Method

## Definición

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

``````public:
static long ToInt64(System::Decimal d);``````
``public static long ToInt64 (decimal d);``
``static member ToInt64 : decimal -> int64``
``Public Shared Function ToInt64 (d As Decimal) As Long``

#### 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 con signo que equivale al valor de `d`.A 64-bit signed integer equivalent to the value of `d`.

#### Excepciones

`d` es menor que MinValue o mayor que MaxValue.`d` is less than MinValue or greater than MaxValue.

## Ejemplos

En el ejemplo siguiente se ToInt64 usa el método para convertir números Int64 decimales en valores.The following example uses the ToInt64 method to convert decimal numbers to Int64 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 {
long number = Decimal.ToInt64(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
//   OverflowException: 18446744073709551615.999
//   OverflowException: 18446744073709551616
//   9223372036854775807.999 --> 9223372036854775807
//   OverflowException: 9223372036854775808
//   -0.999 --> 0
//   -1 --> -1
//   -9223372036854775808.999 --> -9223372036854775808
//   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 Long = Decimal.ToInt64(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
'   OverflowException: 18446744073709551615.999
'   OverflowException: 18446744073709551616
'   9223372036854775807.999 --> 9223372036854775807
'   OverflowException: 9223372036854775808
'   -0.999 --> 0
'   -1 --> -1
'   -9223372036854775808.999 --> -9223372036854775808
'   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 mediante el operador de Explicit asignación.You can also convert a Decimal value to a 64-bit 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.