我仍然在学习C#的基础知识,我对这个问题感到非常困惑。我正在使用Windows Forms在C#中创建一个程序,将USD转换为EURO,反之亦然。我使用Math.Round方法将两个输出四舍五入到第二个十进制。我遇到的问题是当我使用“.UoSAC”函数使用“.ToString()”方法将输出转换为字符串时,它只显示EURO符号而不是金额。但是当我取出“\ u20AC”功能时,它会显示金额,而不是欧元符号。现在真正有趣的部分是,当我将欧元兑换成美元时使用完全相同的代码行,输出与美元符号和金额完全吻合。我在这里做错了吗?这是我的代码:
private void btnEXC1_Click(object sender, EventArgs e)
{
double USD = Convert.ToDouble(tbUSD.Text);
double EURO;
EURO = USD * 1.18113;
lblUSDTOEURO.Text = Math.Round(EURO,2).ToString("\u20AC");
}
private void btnEXC2_Click(object sender, EventArgs e)
{
double EURO = Convert.ToDouble(tbEURO.Text);
double USD;
USD = EURO * 0.846648;
lblEUROTOUSD.Text = Math.Round(USD, 2).ToString("c");
}
答案 0 :(得分:3)
将此格式字符串用于欧元:"\u20AC0.00"
在此掩码中,0.00
部分表示数字的显示格式。
在你的面具中没有数字的显示格式,因此它显示为唯一的字符
"c"
格式字符串是一种预定义格式,适用于货币值:MSDN。