我需要以以下格式显示所有货币:
"[Code] [Symbol]#,##0.00;[Code] [Symbol](#,##0.00)"
用户将选择一个国家,我从外部服务获得货币代码和符号。然后我使用 string.replace 将货币代码和符号设置为上面的格式字符串。
因此,值 123.456(美元)的格式如下:
"USD $123.46"
这种方法适用于大多数货币符号,但我对 Kuwait د.ك的货币符号有疑问。我似乎无法格式化任何值以允许符号出现在数字之前。我对字母没有同样的问题。我认为这与阿拉伯语是从右到左书写的事实有关。该符号甚至在浏览器中也是如此。我不能从左到右选择它,选择从右边开始。另外,当我在 linqpad 中进行测试时,我的字符串显示为[Kuwait_Symbol]#,##0.00,但是粘贴到 stackoverflow 文本框中导致字符串为د.ك#,##0.00
请注意,字符串中字符的顺序已更改。
虽然,我有一种感觉,我不得不建议使用符号是不可行的,有没有办法解决这个问题?另外,为什么不能在数字前显示符号?