NumberFormatInfo.CurrencyDecimalSeparator Property


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

Gets or sets the string to use as the decimal separator in currency values.

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

Public Property CurrencyDecimalSeparator As String

Property Value

Type: System.String

The string to use as the decimal separator in currency values. The default for InvariantInfo is ".".

Exception Condition

The property is being set to null.


The property is being set and the NumberFormatInfo object is read-only.


The property is being set to an empty string.

The initial value of this property is derived from the settings in the Region and Language item in Control Panel.

The CurrencyDecimalSeparator property is used with the "C" standard format string to define the symbol that separates integral from fractional digits. For more information, see Standard Numeric Format Strings.

The following example demonstrates the effect of changing the CurrencyDecimalSeparator property.

Imports System
Imports System.Globalization

Class NumberFormatInfoSample

   Public Shared Sub Main()

      ' Gets a NumberFormatInfo associated with the en-US culture.
      Dim nfi As NumberFormatInfo = New CultureInfo("en-US", False).NumberFormat

      ' Displays a value with the default separator (".").
      Dim myInt As Int64 = 123456789
      Console.WriteLine(myInt.ToString("C", nfi))

      ' Displays the same value with a blank as the separator.
      nfi.CurrencyDecimalSeparator = " "
      Console.WriteLine(myInt.ToString("C", nfi))

   End Sub 'Main 

End Class 'NumberFormatInfoSample


'This code produces the following output.



'$123,456,789 00


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