ich ein ernstes Problem mit C# haben, ist dies mein Code:C# Eingabezeichenfolge hatte kein richtiges Format. int.Parse
string priceLowstring = Inventory.exportPrice(price.lowest_price);
string pricestring = Inventory.exportPrice(price.median_price);
Log.Success(priceLowstring);
Log.Success(pricestring);
int priceavg = int.Parse(pricestring);
int priceLow = int.Parse(priceLowstring);
Und ich erhalten diese Fehlermeldung:
[Gicminos 2016-08-01 11:52:56] SUCCESS: 4
[Gicminos 2016-08-01 11:52:56] SUCCESS: 2
[Gicminos 2016-08-01 11:52:56] ERROR: Unhandled exception occurred in bot: System.FormatException: Input string was not in a correct format.
at System.Number.StringToNumber(String str, NumberStyles options, NumberBuffer& number, NumberFormatInfo info, Boolean parseDecimal)
at System.Number.ParseInt32(String s, NumberStyles style, NumberFormatInfo info)
....
Wie Sie auf Log-Nachricht sehen können, Strings korrekt sind und sie haben keine Räume.
Ich überprüfte meine /HKEY_CURRENT_USER/Control Panel/International/sPositiveSign
und es ist leer.
Was muss ich tun, um dieses Problem zu lösen?
"Strings sind richtig" => wahrscheinlich nicht, wie int.Parse ausfällt. Fügen Sie einen Debugger hinzu, um den Wert _actual_ string zu sehen. – ken2k
Sie können auf "[Gicminos 2016-08-01 11:52:56] SUCCESS: 4" den String-Wert "4" sehen. Ich bin mir sicher. – Gicminos
Ich sah diese Zeile, aber es bedeutet nicht, dass der Wert tatsächlich "4" ist. Was passiert, wenn nach der "4" ein nicht darstellbarer Char vorhanden ist? Keine schwarze Magie hier, kein Bug im Framework, int.Parse ("4") funktioniert. – ken2k