Decimal.ToUInt32 Method (Decimal)


The .NET API Reference documentation has a new home. Visit the .NET API Browser on to see the new experience.


Converts the value of the specified Decimal to the equivalent 32-bit unsigned integer.

This API is not CLS-compliant.

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

Public Shared Function ToUInt32 (
	d As Decimal
) As UInteger


Type: System.Decimal

The decimal number to convert.

Return Value

Type: System.UInt32

A 32-bit unsigned integer equivalent to the value of d.

Exception Condition

d is negative or greater than UInt32.MaxValue.

The return value is the integral part of the decimal value; fractional digits are truncated.

You can also convert a Decimal value to an 32-bit unsigned integer by using the Narrowing(Decimal to UInt32) assignment operator. Because the operator performs a narrowing conversion, you must use a casting operator in C# or a conversion function in Visual Basic.

The following example uses the ToUInt32 method to convert decimal numbers to UInt32 values.

Module Example
   Public Sub Main()
      Dim values() As Decimal = { 123d, New Decimal(123000, 0, 0, false, 3), 
                                  123.999d, 4294967295.999d, 4294967296d,
                                  4294967296d, 2147483647.999d, 2147483648d, 
                                  -0.999d, -1d, -2147483648.999d, -2147483649d }

      For Each value In values
            Dim number As UInteger = Decimal.ToUInt32(value)
            Console.WriteLine("{0} --> {1}", value, number)       
         Catch e As OverflowException
             Console.WriteLine("{0}: {1}", e.GetType().Name, value)
         End Try   
   End Sub
End Module
' The example displays the following output:
'     123 --> 123
'     123.000 --> 123
'     123.999 --> 123
'     4294967295.999 --> 4294967295
'     OverflowException: 4294967296
'     OverflowException: 4294967296
'     2147483647.999 --> 2147483647
'     2147483648 --> 2147483648
'     -0.999 --> 0
'     OverflowException: -1
'     OverflowException: -2147483648.999
'     OverflowException: -2147483649

Universal Windows Platform
Available since 8
.NET Framework
Available since 1.1
Portable Class Library
Supported in: portable .NET platforms
Available since 2.0
Windows Phone Silverlight
Available since 7.0
Windows Phone
Available since 8.1
Return to top