想象一下,我想在视图中显示两个值。
首先,我希望以美元显示美国的收入数字。 然后我想用欧元显示欧盟的收入数字。
让我们说美国的收入是1234.56 欧盟收入为5678.90
对于正在使用en-US文化(即美国)查看系统的人,我希望输出如下:
美国收入:1,234.56美元 欧盟收入:€5,678.90
对于正在使用文化de-DE(即德语)查看系统的人,我希望输出如下:
美国收入:1.234,56美元 欧盟收入:€5.678,90
换句话说,我希望数字格式(以及其他所有内容)由当前文化决定,我希望能够指定货币。
有没有办法修改.ToString(" c")以便您可以指定货币(不改变文化)?如果没有,还有其他选择吗?
非常感谢!
答案 0 :(得分:0)
您可以使用带有两个参数的ToString重载:
double value = 1234.5;
CultureInfo cultureInfo = new CultureInfo("de-DE");
return value.ToString("c", cultureInfo.NumberFormat);
这将采用您指定的国家/地区的文化,并相应地格式化数字。