c++ - ICU 自定义货币格式 (C++)

标签 c++ currency icu

是否可以使用 ICU 库自定义格式化货币字符串,类似于它允许您通过提供格式字符串(例如“mm/dd/yyy”)格式化时间字符串的方式。

因此对于给定的语言环境(比如美元),如果我愿意,我可以让所有货币字符串返回“xxx.00 $ USD”。

最佳答案

参见 http://icu-project.org/apiref/icu4c/classDecimalFormat.html ,

特别是:http://icu-project.org/apiref/icu4c/classDecimalFormat.html#aadc21eab2ef6252f25eada5440e3c65

有关模式语法,请参阅:http://icu-project.org/apiref/icu4c/classDecimalFormat.html#_details

我没有用过这个,但根据我对 ICU 的了解,这是方向。

但是我建议使用:

http://icu-project.org/apiref/icu4c/classNumberFormat.htmlcreateCurrencyInstance 成员,然后 使用 setMaximumIngegerDigits或其他功能来满足您的需求——这将更加本地化。尽量不要假设任何文化。因为“10,000 USD”在某些使用“,”分隔小数部分的国家/地区可能会被误解为“10 美元”。

所以要小心。

关于c++ - ICU 自定义货币格式 (C++),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1941818/

相关文章:

C++ 头文件需要引用另一个类的函数

c# - String.Format ("{0:C2}", -1234) (货币格式)将负数视为正数

paypal - 我可以使用 PayPal 根据位置更改产品价格吗?

decimal - 软件中如何表示非十进制货币?

node.js - full-ICU 在传递 --icu-data-dir Node 选项时有效,但在使用 NODE_ICU_DATA 环境变量时无效

visual-c++ - 使用自定义 ICU 构建和使用 Boost for Windows Visual Studio

c++ - 在 STL Map 中查找 String Key 的 upper_bound

c++ - 在 OpenCV 中结合两个仿射变换矩阵

c++ - GCC- 无效使用 Register

android - android ndk中的unicode支持