Export (0) Print
Expand All

Decimal.ToInt16 Method

Converts the value of the specified Decimal to the equivalent 16-bit signed integer.

Namespace:  System
Assembly:  mscorlib (in mscorlib.dll)

public static short ToInt16(
	decimal value
)

Parameters

value
Type: System.Decimal

The decimal number to convert.

Return Value

Type: System.Int16
A 16-bit signed integer equivalent to value.

ExceptionCondition
OverflowException

value is less than Int16.MinValue or greater than Int16.MaxValue.

The following example uses the ToInt16 method to convert decimal numbers to Int16 values.

using System;

class Example
{
   public static void Main( )
   {
      decimal[] values = { 123m, new Decimal(123000, 0, 0, false, 3),
                           123.999m, 65535.999m, 65536m,             
                           32767.999m, 32768m, -0.999m,              
                           -1m,  -32768.999m, -32769m };

      foreach (var value in values) {
         try {
            short number = Decimal.ToInt16(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: 65535.999 
//     OverflowException: 65536 
//     32767.999 --> 32767 
//     OverflowException: 32768 
//     -0.999 --> 0 
//     -1 --> -1 
//     -32768.999 --> -32768 
//     OverflowException: -32769

.NET Framework

Supported in: 4.6, 4.5, 4, 3.5, 3.0, 2.0, 1.1

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

XNA Framework

Supported in: 3.0, 2.0, 1.0

Portable Class Library

Supported in: Portable Class Library

Supported in: Windows Phone 8.1

Supported in: Windows Phone Silverlight 8.1

Supported in: Windows Phone Silverlight 8
Show:
© 2015 Microsoft