System.FormatException:C#中的输入字符串格式不正确

时间:2017-12-03 10:10:43

标签: c# string

任何人都可以帮我解决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;

    // ......................................
}

enter image description here

2 个答案:

答案 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();

    }