我有一个场景,用户以字符串形式输入值,我需要将其转换为 美元货币并在表格上显示。我尝试过以下方法。
protected void btn_Click(object sender, EventArgs e)
{
string money = txtbox.Text;
string currency = Convert.ToDecimal(txtbox.Text, new CultureInfo("en-US")).ToString("C");
money = currency;
Response.Write(money);
}
问题是当用户输入56789时,结果显示为$ 56,789.00,其中我不希望在“。”之后出现不必要的零。当用户输入为56789.67时,结果显示为$ 56,789.67,这是预期的。请帮我讲一下。
答案 0 :(得分:1)
试试这个:
protected void btn_Click(object sender, EventArgs e)
{
Decimal currency = Convert.ToDecimal(txtbox.Text, new CultureInfo("en-US"));
string money = currency.ToString("C");
if (currency % 1 == 0) {
money = money.Substring(0, money.Length - 3);
}
Response.write(money);
}
这是demo。
如果您有任何疑问,请与我们联系。祝好运! :)