Custom Numeric Format Strings

http://msdn.microsoft.com/en-us/library/0c899ak8.aspx

You can create a custom numeric format string, which consists of one or more custom numeric specifiers, to define how to format numeric data. A custom numeric format string is any format string that is not a standard numeric format string.
Custom numeric format strings are supported by some overloads of the ToString method of all numeric types. For example, you can supply a numeric format string to the ToString(String) and ToString(String, IFormatProvider) methods of the Int32 type. Custom numeric format strings are also supported by the .NET Framework composite formatting feature, which is used by some Write and WriteLine methods of the Console and StreamWriter classes, the String.Format method, and the StringBuilder.AppendFormat method.
Tip Tip
You can download the Formatting Utility, an application that enables you to apply format strings to either numeric or date and time values and displays the result string.
The following table describes the custom numeric format specifiers and displays sample output produced by each format specifier. See the Notes section for additional information about using custom numeric format strings, and the Example section for a comprehensive illustration of their use.
Format specifier
Name
Description
Examples
“0”
Zero placeholder
Replaces the zero with the corresponding digit if one is present; otherwise, zero appears in the result string.
More information: The “0” Custom Specifier.
1234.5678 (“00000”) -> 01235
0.45678 (“0.00”, en-US) -> 0.46
0.45678 (“0.00”, fr-FR) -> 0,46
“#”
Digit placeholder
Replaces the “#” symbol with the corresponding digit if one is present; otherwise, no digit appears in the result string.
More information: The “#” Custom Specifier.
1234.5678 (“#####”) -> 1235
0.45678 (“#.##”, en-US) -> .46
0.45678 (“#.##”, fr-FR) -> ,46
“.”
Decimal point
Determines the location of the decimal separator in the result string.
More information: The “.” Custom Specifier.
0.45678 (“0.00”, en-US) -> 0.46
0.45678 (“0.00”, fr-FR) -> 0,46
“,”
Group separator and number scaling
Serves as both a group separator and a number scaling specifier. As a group separator, it inserts a localized group separator character between each group. As a number scaling specifier, it divides a number by 1000 for each comma specified.
More information: The “,” Custom Specifier.
Group separator specifier:
2147483647 (“##,#”, en-US) -> 2,147,483,647
2147483647 (“##,#”, es-ES) -> 2.147.483.647
Scaling specifier:
2147483647 (“#,#,,”, en-US) -> 2,147
2147483647 (“#,#,,”, es-ES) -> 2.147
“%”
Percentage placeholder
Multiplies a number by 100 and inserts a localized percentage symbol in the result string.
More information: The “%” Custom Specifier.
0.3697 (“%#0.00”, en-US) -> %36.97
0.3697 (“%#0.00”, el-GR) -> %36,97
0.3697 (“##.0 %”, en-US) -> 37.0 %
0.3697 (“##.0 %”, el-GR) -> 37,0 %
“‰”
Per mille placeholder
Multiplies a number by 1000 and inserts a localized per mille symbol in the result string.
More information: The “‰” Custom Specifier.
0.03697 (“#0.00‰”, en-US) -> 36.97‰
0.03697 (“#0.00‰”, ru-RU) -> 36,97‰
“E0”
“E+0”
“E-0”
“e0”
“e+0”
“e-0”
Exponential notation
If followed by at least one 0 (zero), formats the result using exponential notation. The case of “E” or “e” indicates the case of the exponent symbol in the result string. The number of zeros following the “E” or “e” character determines the minimum number of digits in the exponent. A plus sign (+) indicates that a sign character always precedes the exponent. A minus sign (-) indicates that a sign character precedes only negative exponents.
More information: The “E” and “e” Custom Specifiers.
987654 (“#0.0e0”) -> 98.8e4
1503.92311 (“0.0##e+00”) -> 1.504e+03
1.8901385E-16 (“0.0e+00”) -> 1.9e-16
\
Escape character
Causes the next character to be interpreted as a literal rather than as a custom format specifier.
More information: The “\” Escape Character.
987654 (“\###00\#”) -> #987654#
‘string’
“string”
Literal string delimiter
Indicates that the enclosed characters should be copied to the result string unchanged.
68 (“# ‘ degrees'”) -> 68 degrees
68 (“#’ degrees'”) -> 68 degrees
;
Section separator
Defines sections with separate format strings for positive, negative, and zero numbers.
More information: The “;” Section Separator.
12.345 (“#0.0#;(#0.0#);–“) -> 12.35
0 (“#0.0#;(#0.0#);–“) -> -0-
-12.345 (“#0.0#;(#0.0#);–“) -> (12.35)
12.345 (“#0.0#;(#0.0#)”) -> 12.35
0 (“#0.0#;(#0.0#)”) -> 0.0
-12.345 (“#0.0#;(#0.0#)”) -> (12.35)
Other
All other characters
The character is copied to the result string unchanged.
68 (“# °”) -> 68 °

Advertisements

About Johan

.Net Developer
This entry was posted in General. Bookmark the permalink.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s