Hallo, ich versuche String in Integer zu konvertieren.Konvertieren Zeichenfolge in Int Fehler in C#
Der folgende Code zeigt einen Teil von wo ich versuche, meine Zeichenfolge in Ganzzahl zu konvertieren.
if (other.gameObject.CompareTag("PickUp"))
{
if (checkpointboolean == false)
{
string pickupName = other.ToString(); //other = Pickup4
//Remove first 6 letters thus remaining with '4'
string y = pickupName.Substring(6);
print(y); // 4 is being printed
int x = 0;
int.TryParse(y, out x);
print (x); // 0 is being printed
Ich habe auch versucht, den Code unten und anstelle von ‚0‘ ich die folgende Störung erhalte:
if (other.gameObject.CompareTag("PickUp"))
{
if (checkpointboolean == false)
{
//Get Object name ex: Pickup4
string pickupName = other.ToString();
//Remove first 6 letters thus remaining with '4'
string y = pickupName.Substring(6);
print(y);
int x = int.Parse(y);
FormatException: Input string was not in the correct format System.Int32.Parse (System.String s)
Wie sicher sind Sie, dass es keine Charaters sind * nach * die 4? Versuchen Sie, 'y.Length' zu drucken ... –
Sie müssen es Schritt für Schritt mit Breakpoints debuggen –
Dies scheint Ihnen zu sagen, dass Ihre Zeichenfolge ungültige Zeichen enthält. Sind Sie sicher, dass Sie nur eine 4 in diesem Teilstring haben? Wenn Sie einen Debugger haben, versuchen Sie, diesen Wert zu betrachten. Wenn Sie ihn nicht haben, ändern Sie ihn mit einem Ausdruck ("[" + y + "]"); um zu sehen, ob es andere Zeichen gibt – Steve