2017-12-03 2 views
-5

Kann jemand mir helfen, den folgenden Fehler in C# zu beheben.System.FormatException: Eingabezeichenfolge war nicht in einem korrekten Format in C#

System.FormatException: Input string was not in a correct format

Unten ist der Code:

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

+1

Was ist der Inhalt von txtTotalPrice.Text in dem Moment, in dem Sie auf die Schaltfläche klicken? – Steve

+0

https://Stackoverflow.com/a/89235/34092 – mjwills

+0

Welche Zeile wirft die Ausnahme? – mjwills

Antwort

0

Der Hauptgrund dafür ist, Ihr Wert ist in Dezimalzahlen zu konvertieren umgewandelt werden.

Bitte lesen Sie den geänderten Code und machen Sie es gelöst, wenn es für Sie arbeitet.

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; 

      } 
     } 
    } 

Bitte lassen Sie mich wissen, wenn Sie andere Zweifel haben.

+0

wow! es funktioniert für mich. aber für finalPrice bekommen Wert 0 warum? Hilf mir. Thnaks Code wie folgt ist: –

+0

CultureInfo Kultur = neue CultureInfo ("en-US"); Wenn ich den Code ändere, ist CultureInfo culture = new CultureInfo ("vi-VN"); Dein Code ist Arbeit. Warum ? –

+0

Ich möchte nur "en-US" nur verwenden. Hilfe mich auflösen. danken. –

Verwandte Themen