public final class HSSFDataFormatter extends DataFormatter
Internally, formats will be implemented using subclasses of Format
such as DecimalFormat and SimpleDateFormat. Therefore the
formats used by this class must obey the same pattern rules as these Format
subclasses. This means that only legal number pattern characters ("0", "#",
".", "," etc.) may appear in number formats. Other characters can be
inserted before or after the number pattern to form a
prefix or suffix.
For example the Excel pattern "$#,##0.00 "USD"_);($#,##0.00 "USD")"
will be correctly formatted as "$1,000.00 USD" or "($1,000.00 USD)".
However the pattern "00-00-00" is incorrectly formatted by
DecimalFormat as "000000--". For Excel formats that are not compatible with
DecimalFormat, you can provide your own custom Format implementation
via HSSFDataFormatter.addFormat(String,Format). The following
custom formats are already provided by this class:
If the Excel format pattern cannot be parsed successfully, then a default
format will be used. The default number format will mimic the Excel General
format: "#" for whole numbers and "#.##########" for decimal numbers. You
can override the default format pattern with
HSSFDataFormatter.setDefaultNumberFormat(Format). Note: the
default format will only be used when a Format cannot be created from the
cell's data format string.
| Constructor and Description |
|---|
HSSFDataFormatter()
Creates a formatter using the
default locale. |
HSSFDataFormatter(java.util.Locale locale)
Creates a formatter using the given locale.
|
addFormat, createFormat, formatCellValue, formatCellValue, formatCellValue, formatRawCellContents, formatRawCellContents, getDefaultFormat, getLocaleChangedObservable, setDefaultNumberFormat, setExcelStyleRoundingMode, setExcelStyleRoundingMode, updateCopyright 2018 The Apache Software Foundation or its licensors, as applicable.