13 个版本 (7 个稳定版)
1.5.0 | 2024年5月28日 |
---|---|
1.4.0 | 2023年11月16日 |
1.3.2 | 2023年10月3日 |
1.2.0 | 2023年4月14日 |
0.3.0 | 2021年7月30日 |
#407 in 国际化 (i18n)
79,448 每月下载量
在 34 个 crate 中使用 (13 个直接使用)
605KB
10K SLoC
icu_decimal
格式化基本的十进制数字。
此模块作为其自己的 crate (icu_decimal
) 和 icu
crate 的一部分发布。有关 ICU4X 项目的更多详细信息,请参阅后者。
支持计划包括货币、度量单位和紧凑表示法。要跟踪进度,请关注 icu4x#275。
示例
使用孟加拉数字格式化数字
use fixed_decimal::FixedDecimal;
use icu::decimal::FixedDecimalFormatter;
use icu::locid::locale;
use writeable::assert_writeable_eq;
let fdf = FixedDecimalFormatter::try_new(
&locale!("bn").into(),
Default::default(),
)
.expect("locale should be present");
let fixed_decimal = FixedDecimal::from(1000007);
assert_writeable_eq!(fdf.format(&fixed_decimal), "১০,০০,০০৭");
格式化小数点后的数字
use fixed_decimal::FixedDecimal;
use icu::decimal::FixedDecimalFormatter;
use icu::locid::Locale;
use writeable::assert_writeable_eq;
let fdf =
FixedDecimalFormatter::try_new(&Locale::UND.into(), Default::default())
.expect("locale should be present");
let fixed_decimal = FixedDecimal::from(200050).multiplied_pow10(-2);
assert_writeable_eq!(fdf.format(&fixed_decimal), "2,000.50");
使用替代数字系统格式化数字
在区域具有该数字系统的符号的情况下,将遵循在 -u-nu
子标签中指定的数字系统。
use fixed_decimal::FixedDecimal;
use icu::decimal::FixedDecimalFormatter;
use icu::locid::locale;
use writeable::assert_writeable_eq;
let fdf = FixedDecimalFormatter::try_new(
&locale!("th-u-nu-thai").into(),
Default::default(),
)
.expect("locale should be present");
let fixed_decimal = FixedDecimal::from(1000007);
assert_writeable_eq!(fdf.format(&fixed_decimal), "๑,๐๐๐,๐๐๗");
更多信息
有关开发、作者身份、贡献等更多信息,请访问 ICU4X 主页
。
依赖项
~1.6–2.2MB
~42K SLoC