NumberFormat constructor
NumberFormat({
- Locale? locale,
- FormatStyle style = const DecimalStyle(),
- String? currency,
- SignDisplay signDisplay = SignDisplay.auto,
- Notation notation = const StandardNotation(),
- Grouping useGrouping = Grouping.auto,
- NumberingSystem? numberingSystem,
- RoundingMode roundingMode = RoundingMode.halfExpand,
- TrailingZeroDisplay trailingZeroDisplay = TrailingZeroDisplay.auto,
- int minimumIntegerDigits = 1,
- Digits? digits,
Creates a NumberFormat instance with custom formatting options.
locale: The locale to use for formatting. Defaults to the system locale.style: The overall formatting style. Defaults to DecimalStyle.currency: The 3-letter ISO 4217 currency code (e.g., 'USD') for currency formatting.signDisplay: When to display the sign for the number. Defaults to SignDisplay.auto.notation: The notation system to use. Defaults to StandardNotation.useGrouping: Whether to use grouping separators. Defaults to Grouping.auto.numberingSystem: The numbering system to use (e.g., 'latn', 'arab').roundingMode: The rounding strategy to use. Defaults to RoundingMode.halfExpand.trailingZeroDisplay: When to display trailing zeros. Defaults to TrailingZeroDisplay.auto.minimumIntegerDigits: The minimum number of integer digits to use. Defaults to 1.digits: Specifies the minimum and maximum number of fraction or significant digits.
Example:
import 'package:intl4x/number_format.dart';
void main() {
print(NumberFormat(locale: Locale('de'), style: DecimalStyle(digits: FractionDigits(2, 2))).format(1234.567)); // Prints '1.234,57'
}
Implementation
NumberFormat({
Locale? locale,
FormatStyle style = const DecimalStyle(),
String? currency,
SignDisplay signDisplay = SignDisplay.auto,
Notation notation = const StandardNotation(),
Grouping useGrouping = Grouping.auto,
NumberingSystem? numberingSystem,
RoundingMode roundingMode = RoundingMode.halfExpand,
TrailingZeroDisplay trailingZeroDisplay = TrailingZeroDisplay.auto,
int minimumIntegerDigits = 1,
Digits? digits,
}) : _impl = NumberFormatImpl.build(
locale ?? findSystemLocale(),
NumberFormatOptions.custom(
currency: currency,
digits: digits,
minimumIntegerDigits: minimumIntegerDigits,
notation: notation,
numberingSystem: numberingSystem,
roundingMode: roundingMode,
signDisplay: signDisplay,
style: style,
trailingZeroDisplay: trailingZeroDisplay,
useGrouping: useGrouping,
),
);