c# – 如何将字符串转换为十进制?
发布时间:2020-12-15 23:42:22 所属栏目:百科 来源:网络整理
导读:我有这个接受数字,逗号和句号的文本框. 假设此文本框包含输入14,500.00 我尝试使用Convert.ToDecimal(textbox.text)将此数字转换为十进制,但它不起作用. Convert.ToDecimal()到包含格式为XXXX.DD的输入的文本框将转换为十进制但输入格式为X,XXX.DD或任何带有
我有这个接受数字,逗号和句号的文本框.
假设此文本框包含输入14,500.00 我尝试使用Convert.ToDecimal(textbox.text)将此数字转换为十进制,但它不起作用. Convert.ToDecimal()到包含格式为XXXX.DD的输入的文本框将转换为十进制但输入格式为X,XXX.DD或任何带有千位分隔符的输入会导致错误:
在这种情况下,Convert.ToDecimal()是否合适? 附加信息: 这是表格.如果单击“添加”,则“价格”和“数量”的乘积应在数据网格视图中显示为“金额”. “添加”按钮中的语法包括: DataRow dr; dr = dsDetail.Tables["SalesOrderDetails"].NewRow(); dr["Amount"] = Convert.ToDecimal(txtSellingPrice.Text) * Convert.ToDecimal(txtQuantity.Text); SalesOrderDetails表中的Amount字段的数据类型为decimal(18,2) 解决方法
您可以强制文化并使用decimal.Parse
decimal d = decimal.Parse("14,500.00",CultureInfo.InvariantCulture); // 14500
是的,如果需要,您还可以继续使用Convert.ToDecimal: d = Convert.ToDecimal("14,CultureInfo.InvariantCulture); (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |