ICU 65.1  65.1
Data Structures | Public Member Functions | Static Public Member Functions
icu::ScientificNumberFormatter Class Reference

A formatter that formats numbers in user-friendly scientific notation. More...

#include <scientificnumberformatter.h>

Inheritance diagram for icu::ScientificNumberFormatter:
icu::UObject icu::UMemory

Public Member Functions

ScientificNumberFormatterclone () const
 Returns a copy of this object. More...
 
virtual ~ScientificNumberFormatter ()
 Destructor. More...
 
UnicodeStringformat (const Formattable &number, UnicodeString &appendTo, UErrorCode &status) const
 Formats a number into user friendly scientific notation. More...
 
- Public Member Functions inherited from icu::UObject
virtual ~UObject ()
 Destructor. More...
 
virtual UClassID getDynamicClassID () const
 ICU4C "poor man's RTTI", returns a UClassID for the actual ICU class. More...
 

Static Public Member Functions

static ScientificNumberFormattercreateSuperscriptInstance (DecimalFormat *fmtToAdopt, UErrorCode &status)
 Creates a ScientificNumberFormatter instance that uses superscript characters for exponents. More...
 
static ScientificNumberFormattercreateSuperscriptInstance (const Locale &locale, UErrorCode &status)
 Creates a ScientificNumberFormatter instance that uses superscript characters for exponents for this locale. More...
 
static ScientificNumberFormattercreateMarkupInstance (DecimalFormat *fmtToAdopt, const UnicodeString &beginMarkup, const UnicodeString &endMarkup, UErrorCode &status)
 Creates a ScientificNumberFormatter instance that uses markup for exponents. More...
 
static ScientificNumberFormattercreateMarkupInstance (const Locale &locale, const UnicodeString &beginMarkup, const UnicodeString &endMarkup, UErrorCode &status)
 Creates a ScientificNumberFormatter instance that uses markup for exponents for this locale. More...
 

Detailed Description

A formatter that formats numbers in user-friendly scientific notation.

Sample code:

UErrorCode status = U_ZERO_ERROR;
LocalPointer<ScientificNumberFormatter> fmt(
        ScientificNumberFormatter::createMarkupInstance(
                "en", "<sup>", "</sup>", status));
if (U_FAILURE(status)) {
    return;
}
UnicodeString appendTo;
// appendTo = "1.23456x10<sup>-78</sup>"
fmt->format(1.23456e-78, appendTo, status);
Stable:
ICU 55

Definition at line 52 of file scientificnumberformatter.h.

Constructor & Destructor Documentation

◆ ~ScientificNumberFormatter()

virtual icu::ScientificNumberFormatter::~ScientificNumberFormatter ( )
virtual

Destructor.

Stable:
ICU 55

Member Function Documentation

◆ clone()

ScientificNumberFormatter* icu::ScientificNumberFormatter::clone ( ) const
inline

Returns a copy of this object.

Caller must free returned copy.

Stable:
ICU 55

Definition at line 121 of file scientificnumberformatter.h.

References U_I18N_API.

◆ createMarkupInstance() [1/2]

static ScientificNumberFormatter* icu::ScientificNumberFormatter::createMarkupInstance ( DecimalFormat fmtToAdopt,
const UnicodeString beginMarkup,
const UnicodeString endMarkup,
UErrorCode status 
)
static

Creates a ScientificNumberFormatter instance that uses markup for exponents.

Parameters
fmtToAdoptThe DecimalFormat which must be configured for scientific notation.
beginMarkupthe markup to start superscript.
endMarkupthe markup to end superscript.
statuserror returned here.
Returns
The new ScientificNumberFormatter instance.
Stable:
ICU 55

◆ createMarkupInstance() [2/2]

static ScientificNumberFormatter* icu::ScientificNumberFormatter::createMarkupInstance ( const Locale locale,
const UnicodeString beginMarkup,
const UnicodeString endMarkup,
UErrorCode status 
)
static

Creates a ScientificNumberFormatter instance that uses markup for exponents for this locale.

Parameters
localeThe locale
beginMarkupthe markup to start superscript.
endMarkupthe markup to end superscript.
statuserror returned here.
Returns
The ScientificNumberFormatter instance.
Stable:
ICU 55

◆ createSuperscriptInstance() [1/2]

static ScientificNumberFormatter* icu::ScientificNumberFormatter::createSuperscriptInstance ( DecimalFormat fmtToAdopt,
UErrorCode status 
)
static

Creates a ScientificNumberFormatter instance that uses superscript characters for exponents.

Parameters
fmtToAdoptThe DecimalFormat which must be configured for scientific notation.
statuserror returned here.
Returns
The new ScientificNumberFormatter instance.
Stable:
ICU 55

◆ createSuperscriptInstance() [2/2]

static ScientificNumberFormatter* icu::ScientificNumberFormatter::createSuperscriptInstance ( const Locale locale,
UErrorCode status 
)
static

Creates a ScientificNumberFormatter instance that uses superscript characters for exponents for this locale.

Parameters
localeThe locale
statuserror returned here.
Returns
The ScientificNumberFormatter instance.
Stable:
ICU 55

◆ format()

UnicodeString& icu::ScientificNumberFormatter::format ( const Formattable number,
UnicodeString appendTo,
UErrorCode status 
) const

Formats a number into user friendly scientific notation.

Parameters
numberthe number to format.
appendToformatted string appended here.
statusany error returned here.
Returns
appendTo
Stable:
ICU 55

The documentation for this class was generated from the following file: