NumberDecimalSeparator Property

NumberFormatInfo::NumberDecimalSeparator Property


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

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

property String^ NumberDecimalSeparator {
	String^ get();
	void set(String^ value);

Property Value

Type: System::String^

The string to use as the decimal separator in numeric 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 NumberDecimalSeparator property is used with the "E", "F", "G", "N", and "R" standard format strings to define the symbol that separates integral from fractional digits. For more information, see Standard Numeric Format Strings.

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

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

using namespace System;
using namespace System::Globalization;
int main()

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

   // Displays a value with the default separator (S".").
   Int64 myInt = 123456789;
   Console::WriteLine( myInt.ToString( "N", nfi ) );

   // Displays the same value with a blank as the separator.
   nfi->NumberDecimalSeparator = " ";
   Console::WriteLine( myInt.ToString( "N", nfi ) );

This code produces the following output.
123, 456, 789.00
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