#include <decimfmt.h>
Class diagram for DecimalFormat:
Public Members | |||
![]() | ![]() | enum | ERoundingMode { kRoundCeiling, kRoundFloor, kRoundDown, kRoundUp, kRoundHalfEven, kRoundHalfDown, kRoundHalfUp } |
![]() | ![]() | enum | EPadPosition { kPadBeforePrefix, kPadAfterPrefix, kPadBeforeSuffix, kPadAfterSuffix } |
![]() | ![]() | DecimalFormat (UErrorCode& status) | |
![]() | ![]() | Create a DecimalFormat using the default pattern and symbols for the default locale. More... | |
![]() | ![]() | DecimalFormat (const UnicodeString& pattern, UErrorCode& status) | |
![]() | ![]() | Create a DecimalFormat from the given pattern and the symbols for the default locale. More... | |
![]() | ![]() | DecimalFormat ( const UnicodeString& pattern, DecimalFormatSymbols* symbolsToAdopt, UErrorCode& status) | |
![]() | ![]() | Create a DecimalFormat from the given pattern and symbols. More... | |
![]() | ![]() | DecimalFormat ( const UnicodeString& pattern, const DecimalFormatSymbols& symbols, UErrorCode& status) | |
![]() | ![]() | Create a DecimalFormat from the given pattern and symbols. More... | |
![]() | ![]() | DecimalFormat (const DecimalFormat& source) | |
![]() | ![]() | Copy constructor. More... | |
![]() | ![]() | DecimalFormat& | operator= (const DecimalFormat& rhs) |
![]() | ![]() | Assignment operator. More... | |
![]() | ![]() | virtual | ~DecimalFormat () |
![]() | ![]() | Destructor. More... | |
![]() | ![]() | virtual Format* | clone (void) const |
![]() | ![]() | Clone this Format object polymorphically. More... | |
![]() | ![]() | virtual bool_t | operator== (const Format& other) const |
![]() | ![]() | Return true if the given Format objects are semantically equal. More... | |
![]() | ![]() | virtual UnicodeString& | format (double number, UnicodeString& toAppendTo, FieldPosition& pos) const |
![]() | ![]() | Format a double or long number using base-10 representation. More... | |
![]() | ![]() | virtual UnicodeString& | format (int32_t number, UnicodeString& toAppendTo, FieldPosition& pos) const |
![]() | ![]() | virtual UnicodeString& | format (const Formattable& obj, UnicodeString& toAppendTo, FieldPosition& pos, UErrorCode& status) const |
![]() | ![]() | Format an object to produce a string. More... | |
![]() | ![]() | UnicodeString& | format (const Formattable& obj, UnicodeString& result, UErrorCode& status) const |
![]() | ![]() | Redeclared NumberFormat method. More... | |
![]() | ![]() | UnicodeString& | format (double number, UnicodeString& output) const |
![]() | ![]() | Redeclared NumberFormat method. More... | |
![]() | ![]() | UnicodeString& | format (int32_t number, UnicodeString& output) const |
![]() | ![]() | Redeclared NumberFormat method. More... | |
![]() | ![]() | virtual void | parse (const UnicodeString& text, Formattable& result, ParsePosition& parsePosition) const |
![]() | ![]() | Parse the given string using this object's choices. More... | |
![]() | ![]() | virtual void | parse (const UnicodeString& text, Formattable& result, UErrorCode& error) const |
![]() | ![]() | Parse a string as a numeric value, and return a Formattable numeric object. More... | |
![]() | ![]() | virtual const DecimalFormatSymbols* | getDecimalFormatSymbols (void) const |
![]() | ![]() | Returns the decimal format symbols, which is generally not changed by the programmer or user. More... | |
![]() | ![]() | virtual void | adoptDecimalFormatSymbols (DecimalFormatSymbols* symbolsToAdopt) |
![]() | ![]() | Sets the decimal format symbols, which is generally not changed by the programmer or user. More... | |
![]() | ![]() | virtual void | setDecimalFormatSymbols (const DecimalFormatSymbols& symbols) |
![]() | ![]() | Sets the decimal format symbols, which is generally not changed by the programmer or user. More... | |
![]() | ![]() | UnicodeString& | getPositivePrefix (UnicodeString& result) const |
![]() | ![]() | Get the positive prefix. More... | |
![]() | ![]() | virtual void | setPositivePrefix (const UnicodeString& newValue) |
![]() | ![]() | Set the positive prefix. More... | |
![]() | ![]() | UnicodeString& | getNegativePrefix (UnicodeString& result) const |
![]() | ![]() | Get the negative prefix. More... | |
![]() | ![]() | virtual void | setNegativePrefix (const UnicodeString& newValue) |
![]() | ![]() | Set the negative prefix. More... | |
![]() | ![]() | UnicodeString& | getPositiveSuffix (UnicodeString& result) const |
![]() | ![]() | Get the positive suffix. More... | |
![]() | ![]() | virtual void | setPositiveSuffix (const UnicodeString& newValue) |
![]() | ![]() | Set the positive suffix. More... | |
![]() | ![]() | UnicodeString& | getNegativeSuffix (UnicodeString& result) const |
![]() | ![]() | Get the negative suffix. More... | |
![]() | ![]() | virtual void | setNegativeSuffix (const UnicodeString& newValue) |
![]() | ![]() | Set the positive suffix. More... | |
![]() | ![]() | int32_t | getMultiplier (void) const |
![]() | ![]() | Get the multiplier for use in percent, permill, etc. More... | |
![]() | ![]() | virtual void | setMultiplier (int32_t newValue) |
![]() | ![]() | Set the multiplier for use in percent, permill, etc. More... | |
![]() | ![]() | virtual double | getRoundingIncrement (void) |
![]() | ![]() | Get the rounding increment. More... | |
![]() | ![]() | virtual void | setRoundingIncrement (double newValue) |
![]() | ![]() | Set the rounding increment. More... | |
![]() | ![]() | virtual ERoundingMode | getRoundingMode (void) |
![]() | ![]() | Get the rounding mode. More... | |
![]() | ![]() | virtual void | setRoundingMode (ERoundingMode roundingMode) |
![]() | ![]() | Set the rounding mode. More... | |
![]() | ![]() | virtual int32_t | getFormatWidth (void) |
![]() | ![]() | Get the width to which the output of format() is padded. More... | |
![]() | ![]() | virtual void | setFormatWidth (int32_t width) |
![]() | ![]() | Set the width to which the output of format() is padded. More... | |
![]() | ![]() | virtual UChar | getPadCharacter (void) |
![]() | ![]() | Get the character used to pad to the format width. More... | |
![]() | ![]() | virtual void | setPadCharacter (UChar padChar) |
![]() | ![]() | Set the character used to pad to the format width. More... | |
![]() | ![]() | virtual EPadPosition | getPadPosition (void) |
![]() | ![]() | Get the position at which padding will take place. More... | |
![]() | ![]() | virtual void | setPadPosition (EPadPosition padPos) |
![]() | ![]() | <font face=helvetica color=red>NEW</font> Set the position at which padding will take place. More... | |
![]() | ![]() | virtual bool_t | isScientificNotation (void) |
![]() | ![]() | Return whether or not scientific notation is used. More... | |
![]() | ![]() | virtual void | setScientificNotation (bool_t useScientific) |
![]() | ![]() | Set whether or not scientific notation is used. More... | |
![]() | ![]() | virtual int8_t | getMinimumExponentDigits (void) |
![]() | ![]() | Return the minimum exponent digits that will be shown. More... | |
![]() | ![]() | virtual void | setMinimumExponentDigits (int8_t minExpDig) |
![]() | ![]() | Set the minimum exponent digits that will be shown. More... | |
![]() | ![]() | virtual bool_t | isExponentSignAlwaysShown (void) |
![]() | ![]() | Return whether the exponent sign is always shown. More... | |
![]() | ![]() | virtual void | setExponentSignAlwaysShown (bool_t expSignAlways) |
![]() | ![]() | Set whether the exponent sign is always shown. More... | |
![]() | ![]() | int32_t | getGroupingSize (void) const |
![]() | ![]() | Return the grouping size. More... | |
![]() | ![]() | virtual void | setGroupingSize (int32_t newValue) |
![]() | ![]() | Set the grouping size. More... | |
![]() | ![]() | bool_t | isDecimalSeparatorAlwaysShown (void) const |
![]() | ![]() | Allows you to get the behavior of the decimal separator with integers. More... | |
![]() | ![]() | virtual void | setDecimalSeparatorAlwaysShown (bool_t newValue) |
![]() | ![]() | Allows you to set the behavior of the decimal separator with integers. More... | |
![]() | ![]() | virtual UnicodeString& | toPattern (UnicodeString& result) const |
![]() | ![]() | Synthesizes a pattern string that represents the current state of this Format object. More... | |
![]() | ![]() | virtual UnicodeString& | toLocalizedPattern (UnicodeString& result) const |
![]() | ![]() | Synthesizes a localized pattern string that represents the current state of this Format object. More... | |
![]() | ![]() | virtual void | applyPattern (const UnicodeString& pattern, UErrorCode& status) |
![]() | ![]() | Apply the given pattern to this Format object. More... | |
![]() | ![]() | virtual void | applyLocalizedPattern (const UnicodeString& pattern, UErrorCode& status) |
![]() | ![]() | Apply the given pattern to this Format object. More... | |
![]() | ![]() | virtual void | setMaximumIntegerDigits (int32_t newValue) |
![]() | ![]() | Sets the maximum number of digits allowed in the integer portion of a number. More... | |
![]() | ![]() | virtual void | setMinimumIntegerDigits (int32_t newValue) |
![]() | ![]() | Sets the minimum number of digits allowed in the integer portion of a number. More... | |
![]() | ![]() | virtual void | setMaximumFractionDigits (int32_t newValue) |
![]() | ![]() | Sets the maximum number of digits allowed in the fraction portion of a number. More... | |
![]() | ![]() | virtual void | setMinimumFractionDigits (int32_t newValue) |
![]() | ![]() | Sets the minimum number of digits allowed in the fraction portion of a number. More... | |
![]() | ![]() | virtual UClassID | getDynamicClassID (void) const |
![]() | ![]() | Returns a unique class ID POLYMORPHICALLY. More... | |
Static Public Members | |||
![]() | ![]() | UClassID | getStaticClassID (void) |
![]() | ![]() | Return the class ID for this class. More... | |
![]() | ![]() | const char* | fgNumberPatterns |
![]() | ![]() | The resource tags we use to retrieve decimal format data from locale resource bundles. More... | |
Static Protected Members | |||
![]() | ![]() | const int32_t | kDoubleIntegerDigits |
![]() | ![]() | const int32_t | kDoubleFractionDigits |
Normally, you get the proper NumberFormat for a specific locale (including the default locale) using the NumberFormat factory methods, rather than constructing a DecimalNumberFormat directly.
Either the prefixes or the suffixes must be different for the parse to distinguish positive from negative. Parsing will be unreliable if the digits, thousands or decimal separators are the same, or if any of them occur in the prefixes or suffixes.
[Special cases:]
NaN is formatted as a single character, typically \uFFFD.
+/-Infinity is formatted as a single character, typically \u221E, plus the positive and negative pre/suffixes.
Note: this class is designed for common users; for very large or small numbers, use a format that can express exponential values.
[Example:]
. // normally we would have a GUI with a menu for this . int32_t locCount; . const Locale* locales = NumberFormat::getAvailableLocales(locCount); . if (locCount > 12) locCount = 12; //limit output . . double myNumber = -1234.56; . UErrorCode success = U_ZERO_ERROR; . NumberFormat* form; //= NumberFormat::createInstance(success); . . // just for fun, we print out a number with the locale number, currency . // and percent format for each locale we can. . UnicodeString countryName; . UnicodeString displayName; . UnicodeString str; . UnicodeString pattern; . Formattable fmtable; . for (int32_t j = 0; j < 3; ++j) { . cout << endl << "FORMAT " << j << endl; . for (int32_t i = 0; i < locCount; ++i) { . if (locales[i].getCountry(countryName).size() == 0) { . // skip language-only . continue; . } . switch (j) { . default: . form = NumberFormat::createInstance(locales[i], success ); break; . case 1: . form = NumberFormat::createCurrencyInstance(locales[i], success ); break; . case 0: . form = NumberFormat::createPercentInstance(locales[i], success ); break; . } . if (form) { . str.remove(); . pattern = ((DecimalFormat*)form)->toPattern(pattern); . cout << locales[i].getDisplayName(displayName) << ": " << pattern; . cout << " -> " << form->format(myNumber,str) << endl; . form->parse(form->format(myNumber,str), fmtable, success); . //cout << " parsed: " << fmtable << endl; . delete form; . } . } . }
. pattern := subpattern{;subpattern} . subpattern := {prefix}integer{.fraction}{suffix} . . prefix := '\\u0000'..'\\uFFFD' - specialCharacters . suffix := '\\u0000'..'\\uFFFD' - specialCharacters . integer := '#'* '0'* '0' . fraction := '0'* '#'* Notation: . X* 0 or more instances of X . (X | Y) either X or Y. . X..Y any character from X up to Y, inclusive. . S - T characters in S, except those in T
Here are the special characters used in the parts of the subpattern, with notes on their usage.
. Symbol Meaning . 0 a digit, showing up a zero if it is zero . # a digit, supressed if zero . . placeholder for decimal separator . , placeholder for grouping separator. . E separates mantissa and exponent for exponential formats. . ; separates formats. . - default negative prefix. . % multiply by 100 and show as percentage . \u2030 multiply by 1000 and show as per mille . \u00A4 currency sign; replaced by currency symbol; if . doubled, replaced by international currency symbol. . If present in a pattern, the monetary decimal separator . is used instead of the decimal separator. . X any other characters can be used in the prefix or suffix . ' used to quote special characters in a prefix or suffix.
If there is no explicit negative subpattern, - is prefixed to the positive form. That is, "0.00" alone is equivalent to "0.00;-0.00".
Illegal formats, such as "#.#.#" in the same format, will cause a failing UErrorCode to be returned.
The grouping separator is commonly used for thousands, but in some countries for ten-thousands. The interval is a constant number of digits between the grouping characters, such as 100,000,000 or 1,0000,0000. If you supply a pattern with multiple grouping characters, the interval between the last one and the end of the integer is the one that is used. So "#,##,###,####" == "######,####" == "##,####,####".
This class only handles localized digits where the 10 digits are contiguous in Unicode, from 0 to 9. Other digits sets (such as superscripts) would need a different subclass.
enum DecimalFormat::ERoundingMode |
kRoundCeiling | |
kRoundFloor | |
kRoundDown | |
kRoundUp | |
kRoundHalfEven | |
kRoundHalfDown | |
kRoundHalfUp |
enum DecimalFormat::EPadPosition |
kPadBeforePrefix | |
kPadAfterPrefix | |
kPadBeforeSuffix | |
kPadAfterSuffix |
DecimalFormat::DecimalFormat (UErrorCode & status) |
Create a DecimalFormat using the default pattern and symbols for the default locale.
This is a convenient way to obtain a DecimalFormat when internationalization is not the main concern.
To obtain standard formats for a given locale, use the factory methods on NumberFormat such as getNumberInstance. These factories will return the most appropriate sub-class of NumberFormat for a given locale.
status | Output param set to success/failure code. If the pattern is invalid this will be set to a failure code. |
DecimalFormat::DecimalFormat (const UnicodeString & pattern, UErrorCode & status) |
Create a DecimalFormat from the given pattern and the symbols for the default locale.
This is a convenient way to obtain a DecimalFormat when internationalization is not the main concern.
To obtain standard formats for a given locale, use the factory methods on NumberFormat such as getNumberInstance. These factories will return the most appropriate sub-class of NumberFormat for a given locale.
pattern | A non-localized pattern string. |
status | Output param set to success/failure code. If the pattern is invalid this will be set to a failure code. |
DecimalFormat::DecimalFormat (const UnicodeString & pattern, DecimalFormatSymbols * symbolsToAdopt, UErrorCode & status) |
Create a DecimalFormat from the given pattern and symbols.
Use this constructor when you need to completely customize the behavior of the format.
To obtain standard formats for a given locale, use the factory methods on NumberFormat such as getInstance or getCurrencyInstance. If you need only minor adjustments to a standard format, you can modify the format returned by a NumberFormat factory method.
pattern | a non-localized pattern string |
symbolsToAdopt | the set of symbols to be used. The caller should not delete this object after making this call. |
status | Output param set to success/failure code. If the pattern is invalid this will be set to a failure code. |
DecimalFormat::DecimalFormat (const UnicodeString & pattern, const DecimalFormatSymbols & symbols, UErrorCode & status) |
Create a DecimalFormat from the given pattern and symbols.
Use this constructor when you need to completely customize the behavior of the format.
To obtain standard formats for a given locale, use the factory methods on NumberFormat such as getInstance or getCurrencyInstance. If you need only minor adjustments to a standard format, you can modify the format returned by a NumberFormat factory method.
pattern | a non-localized pattern string |
symbols | the set of symbols to be used |
status | Output param set to success/failure code. If the pattern is invalid this will be set to a failure code. |
DecimalFormat::DecimalFormat (const DecimalFormat & source) |
Copy constructor.
DecimalFormat & DecimalFormat::operator= (const DecimalFormat & rhs) |
Assignment operator.
virtual DecimalFormat::~DecimalFormat () [virtual]
|
Destructor.
virtual Format * DecimalFormat::clone (void) const [virtual]
|
Clone this Format object polymorphically.
The caller owns the result and should delete it when done.
Reimplemented from Format.
virtual bool_t DecimalFormat::operator== (const Format & other) const [virtual]
|
Return true if the given Format objects are semantically equal.
Objects of different subclasses are considered unequal.
Reimplemented from Format.
virtual UnicodeString & DecimalFormat::format (double number, UnicodeString & toAppendTo, FieldPosition & pos) const [virtual]
|
Format a double or long number using base-10 representation.
number | The value to be formatted. |
toAppendTo | The string to append the formatted string to. This is an output parameter. |
pos | On input: an alignment field, if desired. On output: the offsets of the alignment field. |
Reimplemented from NumberFormat.
virtual UnicodeString& DecimalFormat::format (int32_t number, UnicodeString & toAppendTo, FieldPosition & pos) const [virtual]
|
Reimplemented from NumberFormat.
virtual UnicodeString& DecimalFormat::format (const Formattable & obj, UnicodeString & toAppendTo, FieldPosition & pos, UErrorCode & status) const [virtual]
|
Format an object to produce a string.
This method handles Formattable objects with numeric types. If the Formattable object type is not a numeric type, then it returns a failing UErrorCode.
obj | The object to format. |
toAppendTo | Where the text is to be appended. |
pos | On input: an alignment field, if desired. On output: the offsets of the alignment field. |
status | Output param filled with success/failure status. |
Reimplemented from Format.
UnicodeString & DecimalFormat::format (const Formattable & obj, UnicodeString & result, UErrorCode & status) const [inline]
|
UnicodeString & DecimalFormat::format (double number, UnicodeString & output) const [inline]
|
UnicodeString & DecimalFormat::format (int32_t number, UnicodeString & output) const [inline]
|
virtual void DecimalFormat::parse (const UnicodeString & text, Formattable & result, ParsePosition & parsePosition) const [virtual]
|
Parse the given string using this object's choices.
The method does string comparisons to try to find an optimal match. If no object can be parsed, index is unchanged, and NULL is returned.
text | The text to be parsed. |
result | Formattable to be set to the parse result. If parse fails, return contents are undefined. |
parsePosition | The position to start parsing at on input. On output, moved to after the last successfully parse character. On parse failure, does not change. |
Reimplemented from NumberFormat.
virtual void DecimalFormat::parse (const UnicodeString & text, Formattable & result, UErrorCode & error) const [virtual]
|
Parse a string as a numeric value, and return a Formattable numeric object.
This method parses integers only if IntegerOnly is set.
text | The text to be parsed. |
result | Formattable to be set to the parse result. If parse fails, return contents are undefined. |
status | Success or failure output parameter. |
Reimplemented from NumberFormat.
virtual const DecimalFormatSymbols * DecimalFormat::getDecimalFormatSymbols (void) const [virtual]
|
Returns the decimal format symbols, which is generally not changed by the programmer or user.
virtual void DecimalFormat::adoptDecimalFormatSymbols (DecimalFormatSymbols * symbolsToAdopt) [virtual]
|
Sets the decimal format symbols, which is generally not changed by the programmer or user.
symbolsToAdopt | DecimalFormatSymbols to be adopted. |
virtual void DecimalFormat::setDecimalFormatSymbols (const DecimalFormatSymbols & symbols) [virtual]
|
Sets the decimal format symbols, which is generally not changed by the programmer or user.
symbols | DecimalFormatSymbols. |
UnicodeString & DecimalFormat::getPositivePrefix (UnicodeString & result) const |
Get the positive prefix.
Examples: +123, $123, sFr123
virtual void DecimalFormat::setPositivePrefix (const UnicodeString & newValue) [virtual]
|
Set the positive prefix.
Examples: +123, $123, sFr123
UnicodeString & DecimalFormat::getNegativePrefix (UnicodeString & result) const |
Get the negative prefix.
Examples: -123, ($123) (with negative suffix), sFr-123
virtual void DecimalFormat::setNegativePrefix (const UnicodeString & newValue) [virtual]
|
Set the negative prefix.
Examples: -123, ($123) (with negative suffix), sFr-123
UnicodeString & DecimalFormat::getPositiveSuffix (UnicodeString & result) const |
Get the positive suffix.
Example: 123%
virtual void DecimalFormat::setPositiveSuffix (const UnicodeString & newValue) [virtual]
|
Set the positive suffix.
Example: 123%
UnicodeString & DecimalFormat::getNegativeSuffix (UnicodeString & result) const |
Get the negative suffix.
Examples: -123%, ($123) (with positive suffixes)
virtual void DecimalFormat::setNegativeSuffix (const UnicodeString & newValue) [virtual]
|
Set the positive suffix.
Examples: 123%
int32_t DecimalFormat::getMultiplier (void) const |
Get the multiplier for use in percent, permill, etc.
For a percentage, set the suffixes to have "%" and the multiplier to be 100. (For Arabic, use arabic percent symbol). For a permill, set the suffixes to have "\u2031" and the multiplier to be 1000.
Examples: with 100, 1.23 -> "123", and "123" -> 1.23
virtual void DecimalFormat::setMultiplier (int32_t newValue) [virtual]
|
Set the multiplier for use in percent, permill, etc.
For a percentage, set the suffixes to have "%" and the multiplier to be 100. (For Arabic, use arabic percent symbol). For a permill, set the suffixes to have "\u2031" and the multiplier to be 1000.
Examples: with 100, 1.23 -> "123", and "123" -> 1.23
virtual double DecimalFormat::getRoundingIncrement (void) [virtual]
|
Get the rounding increment.
virtual void DecimalFormat::setRoundingIncrement (double newValue) [virtual]
|
Set the rounding increment.
This method also controls whether rounding is enabled.
newValue | A positive rounding increment, or 0.0 to disable rounding. Negative increments are equivalent to 0.0. |
virtual ERoundingMode DecimalFormat::getRoundingMode (void) [virtual]
|
Get the rounding mode.
virtual void DecimalFormat::setRoundingMode (ERoundingMode roundingMode) [virtual]
|
Set the rounding mode.
This has no effect unless the rounding increment is greater than zero.
roundingMode | A rounding mode |
virtual int32_t DecimalFormat::getFormatWidth (void) [virtual]
|
Get the width to which the output of format()
is padded.
virtual void DecimalFormat::setFormatWidth (int32_t width) [virtual]
|
Set the width to which the output of format()
is padded.
This method also controls whether padding is enabled.
width |
the width to which to pad the result of format() , or zero to disable padding. A negative width is equivalent to 0. |
virtual UChar DecimalFormat::getPadCharacter (void) [virtual]
|
Get the character used to pad to the format width.
The default is ' '.
virtual void DecimalFormat::setPadCharacter (UChar padChar) [virtual]
|
Set the character used to pad to the format width.
This has no effect unless padding is enabled.
padChar | the pad character |
virtual EPadPosition DecimalFormat::getPadPosition (void) [virtual]
|
Get the position at which padding will take place.
This is the location at which padding will be inserted if the result of format()
is shorter than the format width.
kPadBeforePrefix
, kPadAfterPrefix
, kPadBeforeSuffix
, or kPadAfterSuffix
.
virtual void DecimalFormat::setPadPosition (EPadPosition padPos) [virtual]
|
<font face=helvetica color=red>NEW</font> Set the position at which padding will take place.
This is the location at which padding will be inserted if the result of format()
is shorter than the format width. This has no effect unless padding is enabled.
padPos |
the pad position, one of kPadBeforePrefix , kPadAfterPrefix , kPadBeforeSuffix , or kPadAfterSuffix . |
virtual bool_t DecimalFormat::isScientificNotation (void) [virtual]
|
Return whether or not scientific notation is used.
virtual void DecimalFormat::setScientificNotation (bool_t useScientific) [virtual]
|
Set whether or not scientific notation is used.
useScientific | TRUE if this object formats and parses scientific notation |
virtual int8_t DecimalFormat::getMinimumExponentDigits (void) [virtual]
|
Return the minimum exponent digits that will be shown.
virtual void DecimalFormat::setMinimumExponentDigits (int8_t minExpDig) [virtual]
|
Set the minimum exponent digits that will be shown.
This has no effect unless scientific notation is in use.
minExpDig | a value >= 1 indicating the fewest exponent digits that will be shown. Values less than 1 will be treated as 1. |
virtual bool_t DecimalFormat::isExponentSignAlwaysShown (void) [virtual]
|
Return whether the exponent sign is always shown.
virtual void DecimalFormat::setExponentSignAlwaysShown (bool_t expSignAlways) [virtual]
|
Set whether the exponent sign is always shown.
This has no effect unless scientific notation is in use.
expSignAlways | TRUE if the exponent is always prefixed with either the localized minus sign or the localized plus sign, false if only negative exponents are prefixed with the localized minus sign. |
int32_t DecimalFormat::getGroupingSize (void) const |
Return the grouping size.
Grouping size is the number of digits between grouping separators in the integer portion of a number. For example, in the number "123,456.78", the grouping size is 3.
virtual void DecimalFormat::setGroupingSize (int32_t newValue) [virtual]
|
Set the grouping size.
Grouping size is the number of digits between grouping separators in the integer portion of a number. For example, in the number "123,456.78", the grouping size is 3.
bool_t DecimalFormat::isDecimalSeparatorAlwaysShown (void) const |
Allows you to get the behavior of the decimal separator with integers.
(The decimal separator will always appear with decimals.)
Example: Decimal ON: 12345 -> 12345.; OFF: 12345 -> 12345
virtual void DecimalFormat::setDecimalSeparatorAlwaysShown (bool_t newValue) [virtual]
|
Allows you to set the behavior of the decimal separator with integers.
(The decimal separator will always appear with decimals.)
Example: Decimal ON: 12345 -> 12345.; OFF: 12345 -> 12345
virtual UnicodeString & DecimalFormat::toPattern (UnicodeString & result) const [virtual]
|
Synthesizes a pattern string that represents the current state of this Format object.
virtual UnicodeString & DecimalFormat::toLocalizedPattern (UnicodeString & result) const [virtual]
|
Synthesizes a localized pattern string that represents the current state of this Format object.
virtual void DecimalFormat::applyPattern (const UnicodeString & pattern, UErrorCode & status) [virtual]
|
Apply the given pattern to this Format object.
A pattern is a short-hand specification for the various formatting properties. These properties can also be changed individually through the various setter methods.
There is no limit to integer digits are set by this routine, since that is the typical end-user desire; use setMaximumInteger if you want to set a real value. For negative numbers, use a second pattern, separated by a semicolon
. Example "#,#00.0#" -> 1,234.56
. Example: "#,#00.0#;(#,#00.0#)" for negatives in parantheses.
pattern | The pattern to be applied. |
status | Output param set to success/failure code on exit. If the pattern is invalid, this will be set to a failure result. |
virtual void DecimalFormat::applyLocalizedPattern (const UnicodeString & pattern, UErrorCode & status) [virtual]
|
Apply the given pattern to this Format object.
The pattern is assumed to be in a localized notation. A pattern is a short-hand specification for the various formatting properties. These properties can also be changed individually through the various setter methods.
There is no limit to integer digits are set by this routine, since that is the typical end-user desire; use setMaximumInteger if you want to set a real value. For negative numbers, use a second pattern, separated by a semicolon
. Example "#,#00.0#" -> 1,234.56
Example: "#,#00.0#;(#,#00.0#)" for negatives in parantheses.
In negative patterns, the minimum and maximum counts are ignored; these are presumed to be set in the positive pattern.
pattern | The localized pattern to be applied. |
status | Output param set to success/failure code on exit. If the pattern is invalid, this will be set to a failure result. |
virtual void DecimalFormat::setMaximumIntegerDigits (int32_t newValue) [virtual]
|
Sets the maximum number of digits allowed in the integer portion of a number.
This override limits the integer digit count to 309.
Reimplemented from NumberFormat.
virtual void DecimalFormat::setMinimumIntegerDigits (int32_t newValue) [virtual]
|
Sets the minimum number of digits allowed in the integer portion of a number.
This override limits the integer digit count to 309.
Reimplemented from NumberFormat.
virtual void DecimalFormat::setMaximumFractionDigits (int32_t newValue) [virtual]
|
Sets the maximum number of digits allowed in the fraction portion of a number.
This override limits the fraction digit count to 340.
Reimplemented from NumberFormat.
virtual void DecimalFormat::setMinimumFractionDigits (int32_t newValue) [virtual]
|
Sets the minimum number of digits allowed in the fraction portion of a number.
This override limits the fraction digit count to 340.
Reimplemented from NumberFormat.
virtual UClassID DecimalFormat::getDynamicClassID (void) const [inline, virtual]
|
Returns a unique class ID POLYMORPHICALLY.
Pure virtual override. This method is to implement a simple version of RTTI, since not all C++ compilers support genuine RTTI. Polymorphic operator==() and clone() methods call this method.
Reimplemented from Format.
UClassID DecimalFormat::getStaticClassID (void) [inline, static]
|
Return the class ID for this class.
This is useful only for comparing to a return value from getDynamicClassID(). For example:
. Base* polymorphic_pointer = createPolymorphicObject(); . if (polymorphic_pointer->getDynamicClassID() == . Derived::getStaticClassID()) ...
Reimplemented from NumberFormat.
const char* DecimalFormat::fgNumberPatterns [static]
|
The resource tags we use to retrieve decimal format data from locale resource bundles.
const int32_t DecimalFormat::kDoubleIntegerDigits [static, protected]
|
const int32_t DecimalFormat::kDoubleFractionDigits [static, protected]
|