Movatterモバイル変換


[0]ホーム

URL:


ICU 78.1  78.1
decimfmt.h
Go to the documentation of this file.
1 // © 2016 and later: Unicode, Inc. and others.
2 // License & terms of use: http://www.unicode.org/copyright.html
3 /*
4 ********************************************************************************
5 * Copyright (C) 1997-2016, International Business Machines
6 * Corporation and others. All Rights Reserved.
7 ********************************************************************************
8 *
9 * File DECIMFMT.H
10 *
11 * Modification History:
12 *
13 * Date Name Description
14 * 02/19/97 aliu Converted from java.
15 * 03/20/97 clhuang Updated per C++ implementation.
16 * 04/03/97 aliu Rewrote parsing and formatting completely, and
17 * cleaned up and debugged. Actually works now.
18 * 04/17/97 aliu Changed DigitCount to int per code review.
19 * 07/10/97 helena Made ParsePosition a class and get rid of the function
20 * hiding problems.
21 * 09/09/97 aliu Ported over support for exponential formats.
22 * 07/20/98 stephen Changed documentation
23 * 01/30/13 emmons Added Scaling methods
24 ********************************************************************************
25 */
26 
27 #ifndef DECIMFMT_H
28 #define DECIMFMT_H
29 
30 #include "unicode/utypes.h"
31 
32 #if U_SHOW_CPLUSPLUS_API
33 
39 #if !UCONFIG_NO_FORMATTING
40 
41 #include "unicode/dcfmtsym.h"
42 #include "unicode/numfmt.h"
43 #include "unicode/locid.h"
44 #include "unicode/fpositer.h"
45 #include "unicode/stringpiece.h"
46 #include "unicode/curramt.h"
47 #include "unicode/enumset.h"
48 
49 U_NAMESPACE_BEGIN
50 
51 classCurrencyPluralInfo;
52 classCompactDecimalFormat;
53 
54 namespacenumber {
55 classLocalizedNumberFormatter;
56 namespaceimpl {
57 classDecimalQuantity;
58 structDecimalFormatFields;
59 classUFormattedNumberData;
60 }
61 }
62 
63 namespacenumparse::impl {
64 classNumberParserImpl;
65 }
66 
666 classU_I18N_APIDecimalFormat :publicNumberFormat {
667 public:
672 enumEPadPosition {
673  kPadBeforePrefix, kPadAfterPrefix, kPadBeforeSuffix, kPadAfterSuffix
674  };
675 
692 DecimalFormat(UErrorCode& status);
693 
711 DecimalFormat(constUnicodeString& pattern,UErrorCode& status);
712 
734 DecimalFormat(constUnicodeString& pattern,DecimalFormatSymbols* symbolsToAdopt,UErrorCode& status);
735 
736 #ifndef U_HIDE_INTERNAL_API
737 
750 DecimalFormat(constUnicodeString& pattern,DecimalFormatSymbols* symbolsToAdopt,
751 UNumberFormatStyle style,UErrorCode& status);
752 
753 #if UCONFIG_HAVE_PARSEALLINPUT
754 
758 void setParseAllInput(UNumberFormatAttributeValue value);
759 
760 #endif
761 
762 #endif/* U_HIDE_INTERNAL_API */
763 
764 private:
765 
770 DecimalFormat(constDecimalFormatSymbols* symbolsToAdopt,UErrorCode& status);
771 
772 public:
773 
784 virtualDecimalFormat&setAttribute(UNumberFormatAttribute attr, int32_t newValue,UErrorCode& status);
785 
795 virtual int32_tgetAttribute(UNumberFormatAttribute attr,UErrorCode& status)const;
796 
797 
804 voidsetGroupingUsed(UBool newValue)override;
805 
813 voidsetParseIntegerOnly(UBool value)override;
814 
822 voidsetLenient(UBool enable)override;
823 
846 DecimalFormat(constUnicodeString& pattern,DecimalFormatSymbols* symbolsToAdopt,
847 UParseError& parseError,UErrorCode& status);
848 
869 DecimalFormat(constUnicodeString& pattern,constDecimalFormatSymbols& symbols,UErrorCode& status);
870 
877 DecimalFormat(constDecimalFormat& source);
878 
885 DecimalFormat&operator=(constDecimalFormat& rhs);
886 
891 ~DecimalFormat()override;
892 
900 DecimalFormat*clone()const override;
901 
910 booloperator==(constFormat& other)const override;
911 
912 
913 usingNumberFormat::format;
914 
926 UnicodeString&format(double number,UnicodeString& appendTo,FieldPosition& pos)const override;
927 
928 #ifndef U_HIDE_INTERNAL_API
941 UnicodeString&format(double number,UnicodeString& appendTo,FieldPosition& pos,
942 UErrorCode& status)const override;
943 #endif/* U_HIDE_INTERNAL_API */
944 
958 UnicodeString&format(double number,UnicodeString& appendTo,FieldPositionIterator* posIter,
959 UErrorCode& status)const override;
960 
972 UnicodeString&format(int32_t number,UnicodeString& appendTo,FieldPosition& pos)const override;
973 
974 #ifndef U_HIDE_INTERNAL_API
987 UnicodeString&format(int32_t number,UnicodeString& appendTo,FieldPosition& pos,
988 UErrorCode& status)const override;
989 #endif/* U_HIDE_INTERNAL_API */
990 
1004 UnicodeString&format(int32_t number,UnicodeString& appendTo,FieldPositionIterator* posIter,
1005 UErrorCode& status)const override;
1006 
1018 UnicodeString&format(int64_t number,UnicodeString& appendTo,FieldPosition& pos)const override;
1019 
1020 #ifndef U_HIDE_INTERNAL_API
1033 UnicodeString&format(int64_t number,UnicodeString& appendTo,FieldPosition& pos,
1034 UErrorCode& status)const override;
1035 #endif/* U_HIDE_INTERNAL_API */
1036 
1050 UnicodeString&format(int64_t number,UnicodeString& appendTo,FieldPositionIterator* posIter,
1051 UErrorCode& status)const override;
1052 
1069 UnicodeString&format(StringPiece number,UnicodeString& appendTo,FieldPositionIterator* posIter,
1070 UErrorCode& status)const override;
1071 
1072 #ifndef U_HIDE_INTERNAL_API
1073 
1089 UnicodeString&format(const number::impl::DecimalQuantity& number,UnicodeString& appendTo,
1090 FieldPositionIterator* posIter,UErrorCode& status)const override;
1091 
1107 UnicodeString&format(const number::impl::DecimalQuantity& number,UnicodeString& appendTo,
1108 FieldPosition& pos,UErrorCode& status)const override;
1109 
1110 #endif// U_HIDE_INTERNAL_API
1111 
1112 usingNumberFormat::parse;
1113 
1133 voidparse(constUnicodeString& text,Formattable& result,
1134 ParsePosition& parsePosition)const override;
1135 
1155 CurrencyAmount*parseCurrency(constUnicodeString& text,ParsePosition& pos)const override;
1156 
1164 virtualconstDecimalFormatSymbols*getDecimalFormatSymbols()const;
1165 
1172 virtualvoidadoptDecimalFormatSymbols(DecimalFormatSymbols* symbolsToAdopt);
1173 
1180 virtualvoidsetDecimalFormatSymbols(constDecimalFormatSymbols& symbols);
1181 
1182 
1189 virtualconstCurrencyPluralInfo*getCurrencyPluralInfo()const;
1190 
1197 virtualvoidadoptCurrencyPluralInfo(CurrencyPluralInfo* toAdopt);
1198 
1205 virtualvoidsetCurrencyPluralInfo(constCurrencyPluralInfo& info);
1206 
1207 
1216 UnicodeString&getPositivePrefix(UnicodeString& result)const;
1217 
1225 virtualvoidsetPositivePrefix(constUnicodeString& newValue);
1226 
1235 UnicodeString&getNegativePrefix(UnicodeString& result)const;
1236 
1244 virtualvoidsetNegativePrefix(constUnicodeString& newValue);
1245 
1254 UnicodeString&getPositiveSuffix(UnicodeString& result)const;
1255 
1263 virtualvoidsetPositiveSuffix(constUnicodeString& newValue);
1264 
1273 UnicodeString&getNegativeSuffix(UnicodeString& result)const;
1274 
1282 virtualvoidsetNegativeSuffix(constUnicodeString& newValue);
1283 
1292 UBoolisSignAlwaysShown()const;
1293 
1302 voidsetSignAlwaysShown(UBool value);
1303 
1316  int32_tgetMultiplier()const;
1317 
1331 virtualvoidsetMultiplier(int32_t newValue);
1332 
1345  int32_tgetMultiplierScale()const;
1346 
1366 voidsetMultiplierScale(int32_t newValue);
1367 
1377 virtualdoublegetRoundingIncrement()const;
1378 
1390 virtualvoidsetRoundingIncrement(double newValue);
1391 
1400 virtualERoundingModegetRoundingMode()const override;
1401 
1410 virtualvoidsetRoundingMode(ERoundingMode roundingMode)override;
1411 
1423 virtual int32_tgetFormatWidth()const;
1424 
1439 virtualvoidsetFormatWidth(int32_t width);
1440 
1453 virtualUnicodeStringgetPadCharacterString()const;
1454 
1469 virtualvoidsetPadCharacter(constUnicodeString& padChar);
1470 
1486 virtualEPadPositiongetPadPosition()const;
1487 
1504 virtualvoidsetPadPosition(EPadPosition padPos);
1505 
1516 virtualUBoolisScientificNotation()const;
1517 
1533 virtualvoidsetScientificNotation(UBool useScientific);
1534 
1545 virtual int8_tgetMinimumExponentDigits()const;
1546 
1559 virtualvoidsetMinimumExponentDigits(int8_t minExpDig);
1560 
1573 virtualUBoolisExponentSignAlwaysShown()const;
1574 
1588 virtualvoidsetExponentSignAlwaysShown(UBool expSignAlways);
1589 
1601  int32_tgetGroupingSize()const;
1602 
1614 virtualvoidsetGroupingSize(int32_t newValue);
1615 
1634  int32_tgetSecondaryGroupingSize()const;
1635 
1647 virtualvoidsetSecondaryGroupingSize(int32_t newValue);
1648 
1672  int32_tgetMinimumGroupingDigits()const;
1673 
1691 voidsetMinimumGroupingDigits(int32_t newValue);
1692 
1701 UBoolisDecimalSeparatorAlwaysShown()const;
1702 
1711 virtualvoidsetDecimalSeparatorAlwaysShown(UBool newValue);
1712 
1719 UBoolisDecimalPatternMatchRequired()const;
1720 
1730 virtualvoidsetDecimalPatternMatchRequired(UBool newValue);
1731 
1739 UBoolisParseNoExponent()const;
1740 
1749 voidsetParseNoExponent(UBool value);
1750 
1758 UBoolisParseCaseSensitive()const;
1759 
1771 voidsetParseCaseSensitive(UBool value);
1772 
1781 UBoolisFormatFailIfMoreThanMaxDigits()const;
1782 
1790 voidsetFormatFailIfMoreThanMaxDigits(UBool value);
1791 
1802 virtualUnicodeString&toPattern(UnicodeString& result)const;
1803 
1814 virtualUnicodeString&toLocalizedPattern(UnicodeString& result)const;
1815 
1845 virtualvoidapplyPattern(constUnicodeString& pattern,UParseError& parseError,UErrorCode& status);
1846 
1855 virtualvoidapplyPattern(constUnicodeString& pattern,UErrorCode& status);
1856 
1887 virtualvoidapplyLocalizedPattern(constUnicodeString& pattern,UParseError& parseError,
1888 UErrorCode& status);
1889 
1899 virtualvoidapplyLocalizedPattern(constUnicodeString& pattern,UErrorCode& status);
1900 
1901 
1911 voidsetMaximumIntegerDigits(int32_t newValue)override;
1912 
1922 voidsetMinimumIntegerDigits(int32_t newValue)override;
1923 
1933 voidsetMaximumFractionDigits(int32_t newValue)override;
1934 
1944 voidsetMinimumFractionDigits(int32_t newValue)override;
1945 
1953  int32_tgetMinimumSignificantDigits()const;
1954 
1962  int32_tgetMaximumSignificantDigits()const;
1963 
1975 voidsetMinimumSignificantDigits(int32_t min);
1976 
1988 voidsetMaximumSignificantDigits(int32_t max);
1989 
1996 UBoolareSignificantDigitsUsed()const;
1997 
2005 voidsetSignificantDigitsUsed(UBool useSignificantDigits);
2006 
2019 voidsetCurrency(const char16_t* theCurrency,UErrorCode& ec)override;
2020 
2021 #ifndef U_FORCE_HIDE_DEPRECATED_API
2027 virtualvoidsetCurrency(const char16_t* theCurrency);
2028 #endif// U_FORCE_HIDE_DEPRECATED_API
2029 
2038 voidsetCurrencyUsage(UCurrencyUsage newUsage,UErrorCode* ec);
2039 
2044 UCurrencyUsagegetCurrencyUsage()const;
2045 
2046 #ifndef U_HIDE_INTERNAL_API
2047 
2053 voidformatToDecimalQuantity(double number, number::impl::DecimalQuantity& output,
2054 UErrorCode& status)const;
2055 
2062 voidformatToDecimalQuantity(constFormattable& number, number::impl::DecimalQuantity& output,
2063 UErrorCode& status)const;
2064 
2065 #endif/* U_HIDE_INTERNAL_API */
2066 
2112 constnumber::LocalizedNumberFormatter*toNumberFormatter(UErrorCode& status)const;
2113 
2125 staticUClassID U_EXPORT2getStaticClassID();
2126 
2138 UClassIDgetDynamicClassID()const override;
2139 
2140 private:
2141 
2143 void touch(UErrorCode& status);
2144 
2146 void touchNoError();
2147 
2159 void setPropertiesFromPattern(constUnicodeString& pattern, int32_t ignoreRounding,
2160 UErrorCode& status);
2161 
2162 const numparse::impl::NumberParserImpl* getParser(UErrorCode& status)const;
2163 
2164 const numparse::impl::NumberParserImpl* getCurrencyParser(UErrorCode& status)const;
2165 
2166 staticvoid fieldPositionHelper(
2167 const number::impl::UFormattedNumberData& formatted,
2168 FieldPosition& fieldPosition,
2169  int32_t offset,
2170 UErrorCode& status);
2171 
2172 staticvoid fieldPositionIteratorHelper(
2173 const number::impl::UFormattedNumberData& formatted,
2174 FieldPositionIterator* fpi,
2175  int32_t offset,
2176 UErrorCode& status);
2177 
2178 void setupFastFormat();
2179 
2180 bool fastFormatDouble(double input,UnicodeString& output)const;
2181 
2182 bool fastFormatInt64(int64_t input,UnicodeString& output)const;
2183 
2184 void doFastFormatInt32(int32_t input,bool isNegative,UnicodeString& output)const;
2185 
2186 //=====================================================================================//
2187 // INSTANCE FIELDS //
2188 //=====================================================================================//
2189 
2190 
2191 // One instance field for the implementation, keep all fields inside of an implementation
2192 // class defined in number_mapper.h
2193  number::impl::DecimalFormatFields* fields =nullptr;
2194 
2195 // Allow child class CompactDecimalFormat to access fProperties:
2196 friendclassCompactDecimalFormat;
2197 
2198 // Allow MeasureFormat to use fieldPositionHelper:
2199 friendclassMeasureFormat;
2200 
2201 };
2202 
2203 U_NAMESPACE_END
2204 
2205 #endif/* #if !UCONFIG_NO_FORMATTING */
2206 
2207 #endif/* U_SHOW_CPLUSPLUS_API */
2208 
2209 #endif// _DECIMFMT
2210 //eof
icu::CompactDecimalFormat
IMPORTANT: New users are strongly encouraged to see if numberformatter.h fits their use case.
Definition:compactdecimalformat.h:63
icu::CurrencyAmount
A currency together with a numeric amount, such as 200 USD.
Definition:curramt.h:39
icu::CurrencyPluralInfo
This class represents the information needed by DecimalFormat to format currency plural,...
Definition:currpinf.h:48
icu::DecimalFormatSymbols
This class represents the set of symbols needed by DecimalFormat to format numbers.
Definition:dcfmtsym.h:86
icu::DecimalFormat
IMPORTANT: New users are strongly encouraged to see if numberformatter.h fits their use case.
Definition:decimfmt.h:666
icu::DecimalFormat::isDecimalSeparatorAlwaysShown
UBool isDecimalSeparatorAlwaysShown() const
Allows you to get the behavior of the decimal separator with integers.
icu::DecimalFormat::setMinimumSignificantDigits
void setMinimumSignificantDigits(int32_t min)
Sets the minimum number of significant digits that will be displayed.
icu::DecimalFormat::setParseCaseSensitive
void setParseCaseSensitive(UBool value)
Whether to pay attention to case when parsing; default is to ignore case (perform case-folding).
icu::DecimalFormat::DecimalFormat
DecimalFormat(UErrorCode &status)
Create a DecimalFormat using the default pattern and symbols for the default locale.
icu::DecimalFormat::setSecondaryGroupingSize
virtual void setSecondaryGroupingSize(int32_t newValue)
Set the secondary grouping size.
icu::DecimalFormat::getMaximumSignificantDigits
int32_t getMaximumSignificantDigits() const
Returns the maximum number of significant digits that will be displayed.
icu::DecimalFormat::setDecimalPatternMatchRequired
virtual void setDecimalPatternMatchRequired(UBool newValue)
Allows you to set the parse behavior of the pattern decimal mark.
icu::DecimalFormat::setMaximumIntegerDigits
void setMaximumIntegerDigits(int32_t newValue) override
Sets the maximum number of digits allowed in the integer portion of a number.
icu::DecimalFormat::~DecimalFormat
~DecimalFormat() override
Destructor.
icu::DecimalFormat::applyLocalizedPattern
virtual void applyLocalizedPattern(const UnicodeString &pattern, UErrorCode &status)
Apply the given pattern to this Format object.
icu::DecimalFormat::setPositivePrefix
virtual void setPositivePrefix(const UnicodeString &newValue)
Set the positive prefix.
icu::DecimalFormat::setDecimalSeparatorAlwaysShown
virtual void setDecimalSeparatorAlwaysShown(UBool newValue)
Allows you to set the behavior of the decimal separator with integers.
icu::DecimalFormat::applyPattern
virtual void applyPattern(const UnicodeString &pattern, UParseError &parseError, UErrorCode &status)
Apply the given pattern to this Format object.
icu::DecimalFormat::getGroupingSize
int32_t getGroupingSize() const
Return the grouping size.
icu::DecimalFormat::isFormatFailIfMoreThanMaxDigits
UBool isFormatFailIfMoreThanMaxDigits() const
Returns whether truncation of high-order integer digits should result in an error.
icu::DecimalFormat::getPadPosition
virtual EPadPosition getPadPosition() const
Get the position at which padding will take place.
icu::DecimalFormat::getPositiveSuffix
UnicodeString & getPositiveSuffix(UnicodeString &result) const
Get the positive suffix.
icu::DecimalFormat::operator==
bool operator==(const Format &other) const override
Return true if the given Format objects are semantically equal.
icu::DecimalFormat::setSignificantDigitsUsed
void setSignificantDigitsUsed(UBool useSignificantDigits)
Sets whether significant digits are in use, or integer and fraction digit counts are in use.
icu::DecimalFormat::getRoundingIncrement
virtual double getRoundingIncrement() const
Get the rounding increment.
icu::DecimalFormat::setParseNoExponent
void setParseNoExponent(UBool value)
Specifies whether to stop parsing when an exponent separator is encountered.
icu::DecimalFormat::getMinimumSignificantDigits
int32_t getMinimumSignificantDigits() const
Returns the minimum number of significant digits that will be displayed.
icu::DecimalFormat::format
UnicodeString & format(double number, UnicodeString &appendTo, FieldPosition &pos, UErrorCode &status) const override
Format a double or long number using base-10 representation.
icu::DecimalFormat::format
UnicodeString & format(int32_t number, UnicodeString &appendTo, FieldPosition &pos) const override
Format a long number using base-10 representation.
icu::DecimalFormat::format
UnicodeString & format(double number, UnicodeString &appendTo, FieldPosition &pos) const override
Format a double or long number using base-10 representation.
icu::DecimalFormat::format
UnicodeString & format(int64_t number, UnicodeString &appendTo, FieldPosition &pos, UErrorCode &status) const override
Format an int64 number using base-10 representation.
icu::DecimalFormat::getMultiplier
int32_t getMultiplier() const
Get the multiplier for use in percent, permill, etc.
icu::DecimalFormat::getDynamicClassID
UClassID getDynamicClassID() const override
Returns a unique class ID POLYMORPHICALLY.
icu::DecimalFormat::format
UnicodeString & format(int64_t number, UnicodeString &appendTo, FieldPosition &pos) const override
Format an int64 number using base-10 representation.
icu::DecimalFormat::setPadPosition
virtual void setPadPosition(EPadPosition padPos)
Set the position at which padding will take place.
icu::DecimalFormat::setNegativePrefix
virtual void setNegativePrefix(const UnicodeString &newValue)
Set the negative prefix.
icu::DecimalFormat::setRoundingIncrement
virtual void setRoundingIncrement(double newValue)
Set the rounding increment.
icu::DecimalFormat::setCurrencyPluralInfo
virtual void setCurrencyPluralInfo(const CurrencyPluralInfo &info)
Sets the currency plural format information, which is generally not changed by the programmer or user...
icu::DecimalFormat::getDecimalFormatSymbols
virtual const DecimalFormatSymbols * getDecimalFormatSymbols() const
Returns the decimal format symbols, which is generally not changed by the programmer or user.
icu::DecimalFormat::setDecimalFormatSymbols
virtual void setDecimalFormatSymbols(const DecimalFormatSymbols &symbols)
Sets the decimal format symbols, which is generally not changed by the programmer or user.
icu::DecimalFormat::setMinimumGroupingDigits
void setMinimumGroupingDigits(int32_t newValue)
Sets the minimum grouping digits.
icu::DecimalFormat::getStaticClassID
static UClassID getStaticClassID()
Return the class ID for this class.
icu::DecimalFormat::DecimalFormat
DecimalFormat(const UnicodeString &pattern, DecimalFormatSymbols *symbolsToAdopt, UErrorCode &status)
Create a DecimalFormat from the given pattern and symbols.
icu::DecimalFormat::getMinimumExponentDigits
virtual int8_t getMinimumExponentDigits() const
Return the minimum exponent digits that will be shown.
icu::DecimalFormat::setCurrency
virtual void setCurrency(const char16_t *theCurrency)
Sets the currency used to display currency amounts.
icu::DecimalFormat::setAttribute
virtual DecimalFormat & setAttribute(UNumberFormatAttribute attr, int32_t newValue, UErrorCode &status)
Set an integer attribute on this DecimalFormat.
icu::DecimalFormat::toPattern
virtual UnicodeString & toPattern(UnicodeString &result) const
Synthesizes a pattern string that represents the current state of this Format object.
icu::DecimalFormat::getMinimumGroupingDigits
int32_t getMinimumGroupingDigits() const
Returns the minimum number of grouping digits.
icu::DecimalFormat::setMinimumFractionDigits
void setMinimumFractionDigits(int32_t newValue) override
Sets the minimum number of digits allowed in the fraction portion of a number.
icu::DecimalFormat::setMaximumSignificantDigits
void setMaximumSignificantDigits(int32_t max)
Sets the maximum number of significant digits that will be displayed.
icu::DecimalFormat::setFormatWidth
virtual void setFormatWidth(int32_t width)
Set the width to which the output of format() is padded.
icu::DecimalFormat::formatToDecimalQuantity
void formatToDecimalQuantity(const Formattable &number, number::impl::DecimalQuantity &output, UErrorCode &status) const
Get a DecimalQuantity corresponding to a formattable as it would be formatted by this DecimalFormat.
icu::DecimalFormat::setSignAlwaysShown
void setSignAlwaysShown(UBool value)
Set whether to show the plus sign on positive (non-negative) numbers; for example,...
icu::DecimalFormat::clone
DecimalFormat * clone() const override
Clone this Format object polymorphically.
icu::DecimalFormat::toLocalizedPattern
virtual UnicodeString & toLocalizedPattern(UnicodeString &result) const
Synthesizes a localized pattern string that represents the current state of this Format object.
icu::DecimalFormat::getMultiplierScale
int32_t getMultiplierScale() const
Gets the power of ten by which number should be multiplied before formatting, which can be combined w...
icu::DecimalFormat::setExponentSignAlwaysShown
virtual void setExponentSignAlwaysShown(UBool expSignAlways)
Set whether the exponent sign is always shown.
icu::DecimalFormat::getCurrencyUsage
UCurrencyUsage getCurrencyUsage() const
Returns the Currency Usage object used to display currency.
icu::DecimalFormat::format
UnicodeString & format(const number::impl::DecimalQuantity &number, UnicodeString &appendTo, FieldPositionIterator *posIter, UErrorCode &status) const override
Format a decimal number.
icu::DecimalFormat::isScientificNotation
virtual UBool isScientificNotation() const
Return whether or not scientific notation is used.
icu::DecimalFormat::setGroupingUsed
void setGroupingUsed(UBool newValue) override
Set whether or not grouping will be used in this format.
icu::DecimalFormat::DecimalFormat
DecimalFormat(const UnicodeString &pattern, UErrorCode &status)
Create a DecimalFormat from the given pattern and the symbols for the default locale.
icu::DecimalFormat::isParseCaseSensitive
UBool isParseCaseSensitive() const
Returns whether parsing is sensitive to case (lowercase/uppercase).
icu::DecimalFormat::setMaximumFractionDigits
void setMaximumFractionDigits(int32_t newValue) override
Sets the maximum number of digits allowed in the fraction portion of a number.
icu::DecimalFormat::setNegativeSuffix
virtual void setNegativeSuffix(const UnicodeString &newValue)
Set the negative suffix.
icu::DecimalFormat::getFormatWidth
virtual int32_t getFormatWidth() const
Get the width to which the output of format() is padded.
icu::DecimalFormat::getNegativePrefix
UnicodeString & getNegativePrefix(UnicodeString &result) const
Get the negative prefix.
icu::DecimalFormat::setScientificNotation
virtual void setScientificNotation(UBool useScientific)
Set whether or not scientific notation is used.
icu::DecimalFormat::DecimalFormat
DecimalFormat(const DecimalFormat &source)
Copy constructor.
icu::DecimalFormat::formatToDecimalQuantity
void formatToDecimalQuantity(double number, number::impl::DecimalQuantity &output, UErrorCode &status) const
Format a number and save it into the given DecimalQuantity.
icu::DecimalFormat::isSignAlwaysShown
UBool isSignAlwaysShown() const
Whether to show the plus sign on positive (non-negative) numbers; for example, "+12".
icu::DecimalFormat::format
UnicodeString & format(StringPiece number, UnicodeString &appendTo, FieldPositionIterator *posIter, UErrorCode &status) const override
Format a decimal number.
icu::DecimalFormat::setFormatFailIfMoreThanMaxDigits
void setFormatFailIfMoreThanMaxDigits(UBool value)
Sets whether truncation of high-order integer digits should result in an error.
icu::DecimalFormat::setPositiveSuffix
virtual void setPositiveSuffix(const UnicodeString &newValue)
Set the positive suffix.
icu::DecimalFormat::toNumberFormatter
const number::LocalizedNumberFormatter * toNumberFormatter(UErrorCode &status) const
Converts this DecimalFormat to a (Localized)NumberFormatter.
icu::DecimalFormat::setGroupingSize
virtual void setGroupingSize(int32_t newValue)
Set the grouping size.
icu::DecimalFormat::getPositivePrefix
UnicodeString & getPositivePrefix(UnicodeString &result) const
Get the positive prefix.
icu::DecimalFormat::format
UnicodeString & format(int32_t number, UnicodeString &appendTo, FieldPositionIterator *posIter, UErrorCode &status) const override
Format a long number using base-10 representation.
icu::DecimalFormat::format
UnicodeString & format(int64_t number, UnicodeString &appendTo, FieldPositionIterator *posIter, UErrorCode &status) const override
Format an int64 number using base-10 representation.
icu::DecimalFormat::areSignificantDigitsUsed
UBool areSignificantDigitsUsed() const
Returns true if significant digits are in use, or false if integer and fraction digit counts are in u...
icu::DecimalFormat::setMultiplierScale
void setMultiplierScale(int32_t newValue)
Sets a power of ten by which number should be multiplied before formatting, which can be combined wit...
icu::DecimalFormat::DecimalFormat
DecimalFormat(const UnicodeString &pattern, DecimalFormatSymbols *symbolsToAdopt, UParseError &parseError, UErrorCode &status)
Create a DecimalFormat from the given pattern and symbols.
icu::DecimalFormat::format
UnicodeString & format(double number, UnicodeString &appendTo, FieldPositionIterator *posIter, UErrorCode &status) const override
Format a double or long number using base-10 representation.
icu::DecimalFormat::setMinimumExponentDigits
virtual void setMinimumExponentDigits(int8_t minExpDig)
Set the minimum exponent digits that will be shown.
icu::DecimalFormat::applyPattern
virtual void applyPattern(const UnicodeString &pattern, UErrorCode &status)
Sets the pattern.
icu::DecimalFormat::getRoundingMode
virtual ERoundingMode getRoundingMode() const override
Get the rounding mode.
icu::DecimalFormat::setLenient
void setLenient(UBool enable) override
Sets whether lenient parsing should be enabled (it is off by default).
icu::DecimalFormat::setCurrencyUsage
void setCurrencyUsage(UCurrencyUsage newUsage, UErrorCode *ec)
Sets the Currency Usage object used to display currency.
icu::DecimalFormat::isDecimalPatternMatchRequired
UBool isDecimalPatternMatchRequired() const
Allows you to get the parse behavior of the pattern decimal mark.
icu::DecimalFormat::setCurrency
void setCurrency(const char16_t *theCurrency, UErrorCode &ec) override
Sets the currency used to display currency amounts.
icu::DecimalFormat::getAttribute
virtual int32_t getAttribute(UNumberFormatAttribute attr, UErrorCode &status) const
Get an integer May return U_UNSUPPORTED_ERROR if this instance does not support the specified attribu...
icu::DecimalFormat::setMinimumIntegerDigits
void setMinimumIntegerDigits(int32_t newValue) override
Sets the minimum number of digits allowed in the integer portion of a number.
icu::DecimalFormat::getNegativeSuffix
UnicodeString & getNegativeSuffix(UnicodeString &result) const
Get the negative suffix.
icu::DecimalFormat::adoptDecimalFormatSymbols
virtual void adoptDecimalFormatSymbols(DecimalFormatSymbols *symbolsToAdopt)
Sets the decimal format symbols, which is generally not changed by the programmer or user.
icu::DecimalFormat::getPadCharacterString
virtual UnicodeString getPadCharacterString() const
Get the pad character used to pad to the format width.
icu::DecimalFormat::operator=
DecimalFormat & operator=(const DecimalFormat &rhs)
Assignment operator.
icu::DecimalFormat::setMultiplier
virtual void setMultiplier(int32_t newValue)
Set the multiplier for use in percent, permill, etc.
icu::DecimalFormat::applyLocalizedPattern
virtual void applyLocalizedPattern(const UnicodeString &pattern, UParseError &parseError, UErrorCode &status)
Apply the given pattern to this Format object.
icu::DecimalFormat::EPadPosition
EPadPosition
Pad position.
Definition:decimfmt.h:672
icu::DecimalFormat::getCurrencyPluralInfo
virtual const CurrencyPluralInfo * getCurrencyPluralInfo() const
Returns the currency plural format information, which is generally not changed by the programmer or u...
icu::DecimalFormat::parseCurrency
CurrencyAmount * parseCurrency(const UnicodeString &text, ParsePosition &pos) const override
Parses text from the given string as a currency amount.
icu::DecimalFormat::getSecondaryGroupingSize
int32_t getSecondaryGroupingSize() const
Return the secondary grouping size.
icu::DecimalFormat::isParseNoExponent
UBool isParseNoExponent() const
Returns whether to ignore exponents when parsing.
icu::DecimalFormat::setParseIntegerOnly
void setParseIntegerOnly(UBool value) override
Sets whether or not numbers should be parsed as integers only.
icu::DecimalFormat::adoptCurrencyPluralInfo
virtual void adoptCurrencyPluralInfo(CurrencyPluralInfo *toAdopt)
Sets the currency plural format information, which is generally not changed by the programmer or user...
icu::DecimalFormat::format
UnicodeString & format(int32_t number, UnicodeString &appendTo, FieldPosition &pos, UErrorCode &status) const override
Format a long number using base-10 representation.
icu::DecimalFormat::format
UnicodeString & format(const number::impl::DecimalQuantity &number, UnicodeString &appendTo, FieldPosition &pos, UErrorCode &status) const override
Format a decimal number.
icu::DecimalFormat::isExponentSignAlwaysShown
virtual UBool isExponentSignAlwaysShown() const
Return whether the exponent sign is always shown.
icu::DecimalFormat::setRoundingMode
virtual void setRoundingMode(ERoundingMode roundingMode) override
Set the rounding mode.
icu::DecimalFormat::setPadCharacter
virtual void setPadCharacter(const UnicodeString &padChar)
Set the character used to pad to the format width.
icu::DecimalFormat::DecimalFormat
DecimalFormat(const UnicodeString &pattern, const DecimalFormatSymbols &symbols, UErrorCode &status)
Create a DecimalFormat from the given pattern and symbols.
icu::DecimalFormat::parse
void parse(const UnicodeString &text, Formattable &result, ParsePosition &parsePosition) const override
Parse the given string using this object's choices.
icu::DecimalFormat::DecimalFormat
DecimalFormat(const UnicodeString &pattern, DecimalFormatSymbols *symbolsToAdopt, UNumberFormatStyle style, UErrorCode &status)
This API is for ICU use only.
icu::FieldPositionIterator
FieldPositionIterator returns the field ids and their start/limit positions generated by a call to Fo...
Definition:fpositer.h:58
icu::FieldPosition
FieldPosition is a simple class used by Format and its subclasses to identify fields in formatted out...
Definition:fieldpos.h:110
icu::Format
Base class for all formats.
Definition:format.h:98
icu::Formattable
Formattable objects can be passed to the Format class or its subclasses for formatting.
Definition:fmtable.h:63
icu::MeasureFormat
Definition:measfmt.h:101
icu::NumberFormat
Definition:numfmt.h:175
icu::NumberFormat::format
U_I18N_API UnicodeString & format(const Formattable &obj, UnicodeString &appendTo, UErrorCode &status) const
Formats an object to produce a string.
icu::NumberFormat::ERoundingMode
ERoundingMode
Rounding mode.
Definition:numfmt.h:186
icu::NumberFormat::parse
virtual void parse(const UnicodeString &text, Formattable &result, ParsePosition &parsePosition) const =0
Return a long if possible (e.g.
icu::ParsePosition
ParsePosition is a simple class used by Format and its subclasses to keep track of the current positi...
Definition:parsepos.h:52
icu::StringPiece
A string-like object that points to a sized piece of memory.
Definition:stringpiece.h:61
icu::UnicodeString
UnicodeString is a string class that stores Unicode characters directly and provides similar function...
Definition:unistr.h:303
icu::number::LocalizedNumberFormatter
A NumberFormatter that has a locale associated with it; this means .format() methods are available.
Definition:numberformatter.h:2521
curramt.h
C++ API: Currency Amount Object.
dcfmtsym.h
C++ API: Symbols for formatting numbers.
enumset.h
C++: internal template EnumSet<>
fpositer.h
C++ API: FieldPosition Iterator.
locid.h
C++ API: Locale ID object.
numfmt.h
C++ API: Compatibility APIs for number formatting.
stringpiece.h
C++ API: StringPiece: Read-only byte string wrapper class.
UParseError
A UParseError struct is used to returned detailed information about parsing errors.
Definition:parseerr.h:58
UCurrencyUsage
UCurrencyUsage
Currency Usage used for Decimal Format.
Definition:ucurr.h:41
UBool
int8_t UBool
The ICU boolean type, a signed-byte integer.
Definition:umachine.h:269
UNumberFormatAttribute
UNumberFormatAttribute
The possible UNumberFormat numeric attributes.
Definition:unum.h:970
UNumberFormatStyle
UNumberFormatStyle
The possible number format styles.
Definition:unum.h:150
UClassID
void * UClassID
UClassID is used to identify classes without using the compiler's RTTI.
Definition:uobject.h:96
utypes.h
Basic definitions for ICU, for both C and C++ APIs.
UErrorCode
UErrorCode
Standard ICU4C error code type, a substitute for exceptions.
Definition:utypes.h:509
U_I18N_API
#define U_I18N_API
Set to export library symbols from inside the i18n library, and to import them from outside.
Definition:utypes.h:316

Generated by doxygen 1.9.1
[8]ページ先頭

©2009-2025 Movatter.jp