gpt4 book ai didi

dart - 更改 Dart 的 NumberFormat 中的分组分隔符

转载 作者:行者123 更新时间:2023-12-03 02:40:52 25 4
gpt4 key购买 nike

我有双重值(value)

double myNum = 110700.00;

我想使用 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));
}

关于dart - 更改 Dart 的 NumberFormat 中的分组分隔符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50133321/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com