任何人都可以帮我解决c#中的以下错误。
System.FormatException: Input string was not in a correct format
以下是代码:
CultureInfo culture = new CultureInfo("en-US");
txtTotalPrice.Text = totalPrice.ToString("c", culture);
private void btnCheck_Click(object sender, EventArgs e)
{
// ...................................
decimal totalPrice = Convert.ToDecimal(txtTotalPrice.Text.Split(',')[0]) * 1000;
decimal finalPrice = totalPrice - (totalPrice / 100) * discount;
// ......................................
}
答案 0 :(得分:0)
主要原因是,您转换为十进制的值不可转换。
请参阅修改过的代码,如果适合您,请将其解析。
decimal finalPrice;
decimal totalPrice;
private void btnCheck_Click(object sender, EventArgs e)
{
// TO check if txtTotalPrice is not null
if (!string.IsNullOrEmpty(txtTotalPrice.Text))
{
string decimalValue = txtTotalPrice.Text.Split(',')[0];
decimal val;
// Try to convert it to decimal.
if (decimal.TryParse(decimalValue, out val))
{
// your logic here if able to convert it.
finalPrice = val- (val/ 100) * discount;
}
}
}
如果您有任何其他疑问,请与我们联系。
答案 1 :(得分:0)
System.FormatException:输入字符串的格式不正确
错误
private void button3_Click_1(对象发送者,EventArgs e) {
string UpdateQuery = "UPDATE useraccount SET Student_ID_No='"+textBox1.Text+"',FirstName='"+textBox2.Text+"',MiddleName='"+textBox3.Text+"',LastName='"+textBox4.Text+"',MobileNo='"+textBox5.Text+"',Position='"+comboBox1.Text+"',Password='"+textBox6.Text+"',Question='"+comboBox2.Text+"',Answer="+textBox7.Text+" WHERE id="+int.Parse(textBoxID.Text);
executeMyQuery(UpdateQuery);
populateDGV();
}