moo*_*der 2 number-formatting dart
我有双重价值
double myNum = 110700.00;
Run Code Online (Sandbox Code Playgroud)
我想使用NumberFormat修改其格式
110 700
怎么做?
您不能在不更改语言环境的情况下执行此操作,因为GROUP_SEP是最终的。
但是,如果您不介意更改语言环境,则可以在任何特定实例上执行此操作,例如,new NumberFormat('###,000', 'fr')然后选择non-breaking space用作GROUP_SEP的任何语言环境(例如,法语)。当然,然后您将其,作为小数点分隔符,但是如果您从未使用过它,那将是没有意义的。碰巧对问题中的示例有用,但不能一概而论。
可以(尽管很脆弱)定义自己的语言。因此,如果您碰巧是会说英语的澳大利亚人,更喜欢将其non-breaking space作为组分隔符,请定义自己的语言环境(例如zz)
import 'package:intl/intl.dart';
import 'package:intl/number_symbols_data.dart';
import 'package:intl/number_symbols.dart';
main() {
numberFormatSymbols['zz'] = new NumberSymbols(
NAME: "zz",
DECIMAL_SEP: '.',
GROUP_SEP: '\u00A0',
PERCENT: '%',
ZERO_DIGIT: '0',
PLUS_SIGN: '+',
MINUS_SIGN: '-',
EXP_SYMBOL: 'e',
PERMILL: '\u2030',
INFINITY: '\u221E',
NAN: 'NaN',
DECIMAL_PATTERN: '#,##0.###',
SCIENTIFIC_PATTERN: '#E0',
PERCENT_PATTERN: '#,##0%',
CURRENCY_PATTERN: '\u00A4#,##0.00',
DEF_CURRENCY_CODE: 'AUD',
);
print(new NumberFormat('###,000', 'zz').format(110700));
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1441 次 |
| 最近记录: |