CurrencyDecimalSeparator Property

NumberFormatInfo.CurrencyDecimalSeparator Property


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

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

public string CurrencyDecimalSeparator { get; set; }

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.

using System;
using System.Globalization;

class NumberFormatInfoSample {

   public static void Main() {

      // Gets a NumberFormatInfo associated with the en-US culture.
      NumberFormatInfo nfi = new CultureInfo( "en-US", false ).NumberFormat;

      // Displays a value with the default separator (".").
      Int64 myInt = 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 ) );


This code produces the following output.

$123,456,789 00

Universal Windows Platform
Available since 4.5
.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
© 2015 Microsoft