0Pricing
C# Academy · Lektion

Die Convert-Klasse und Parsing

Parsen und konvertieren Sie mit Convert und TryParse.

Die Convert-Klasse und Parsing ist eine kostenlose C# Academy-Lektion auf CoddyKit. Dies ist Lektion 4 von 4. Du kannst die komplette Lektion unten kostenlos lesen – dann übst du sie direkt im Browser mit einem integrierten Code-Editor und einem KI-Tutor rund um die Uhr. Sie ist Teil des C# Academy-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der C# Academy-Kurs umfasst insgesamt 4 Lektionen.

Zeichenfolgen in Zahlen konvertieren

Benutzereingaben liegen als Text vor. Um damit zu rechnen, müssen Sie Zeichenfolgen in Zahlen konvertieren. C# bietet dafür Convert, Parse und TryParse.

using System;

class Program
{
    static void Main()
    {
        string input = "42";
        int number = int.Parse(input);
        Console.WriteLine(number + 8);
    }
}

int.Parse

int.Parse wandelt eine numerische Zeichenfolge in einen int um. Wenn der Text keine gültige Zahl enthält, wird eine FormatException ausgelöst.

using System;

class Program
{
    static void Main()
    {
        try
        {
            int n = int.Parse("abc");
            Console.WriteLine(n);
        }
        catch (FormatException)
        {
            Console.WriteLine("Not a valid number");
        }
    }
}

int.TryParse

int.TryParse vermeidet Ausnahmen: Bei Erfolg gibt die Methode true zurück und legt das Ergebnis in einem out-Parameter ab; bei einem Fehler gibt sie false zurück.

using System;

class Program
{
    static void Main()
    {
        if (int.TryParse("123", out int n))
            Console.WriteLine("Parsed: " + n);
        else
            Console.WriteLine("Failed");
    }
}

TryParse für sichere Eingaben

TryParse ist die bevorzugte Methode für nicht vertrauenswürdige Eingaben, weil ungültiger Text kontrolliert behandelt wird, statt einen Absturz zu verursachen.

using System;

class Program
{
    static void Main()
    {
        string[] inputs = { "10", "oops", "30" };
        int total = 0;
        foreach (var s in inputs)
        {
            if (int.TryParse(s, out int v))
                total += v;
        }
        Console.WriteLine("Total of valid: " + total);
    }
}

Die Convert-Klasse

Die Klasse Convert konvertiert zwischen vielen Basistypen: Convert.ToInt32, Convert.ToDouble, Convert.ToBoolean und weitere.

using System;

class Program
{
    static void Main()
    {
        int i = Convert.ToInt32("256");
        double d = Convert.ToDouble("3.14");
        bool b = Convert.ToBoolean("true");
        Console.WriteLine(i + ", " + d + ", " + b);
    }
}

Convert verarbeitet null

Im Gegensatz zu int.Parse gibt Convert.ToInt32(null) den Wert 0 zurück, statt eine Ausnahme auszulösen. Das kann praktisch oder überraschend sein.

using System;

class Program
{
    static void Main()
    {
        string s = null;
        int n = Convert.ToInt32(s);   // returns 0
        Console.WriteLine("Result: " + n);
    }
}

Zwischen numerischen Typen konvertieren

Convert wandelt auch einen numerischen Typ in einen anderen um und rundet beim Konvertieren von Gleitkommawerten in Ganzzahlen, statt sie abzuschneiden.

using System;

class Program
{
    static void Main()
    {
        double d = 7.6;
        int cast = (int)d;             // truncates -> 7
        int converted = Convert.ToInt32(d);   // rounds -> 8
        Console.WriteLine("cast=" + cast + ", convert=" + converted);
    }
}

Andere Typen parsen

Die meisten integrierten Typen verfügen über eigene Methoden wie Parse und TryParse: double.TryParse, bool.TryParse, DateTime.TryParse und so weiter.

using System;

class Program
{
    static void Main()
    {
        bool okD = double.TryParse("2.5", out double d);
        bool okB = bool.TryParse("True", out bool flag);
        Console.WriteLine(okD + ":" + d + ", " + okB + ":" + flag);
    }
}

ToString für die Rückkonvertierung

Um eine Zahl wieder in Text umzuwandeln, rufen Sie ToString() auf, optional mit einer Formatzeichenfolge.

using System;

class Program
{
    static void Main()
    {
        int n = 255;
        double price = 12.5;
        Console.WriteLine(n.ToString());
        Console.WriteLine(price.ToString("C"));   // currency format
    }
}

Das richtige Werkzeug wählen

Verwenden Sie TryParse für Benutzereingaben, denen Sie nicht vertrauen können, Parse, wenn die Eingabe garantiert gültig ist, und Convert, wenn Sie null verarbeiten oder zwischen vielen Typen konvertieren müssen.

using System;

class Program
{
    static void Main()
    {
        string userInput = "55x";
        int value = int.TryParse(userInput, out int v) ? v : -1;
        Console.WriteLine(value == -1 ? "Invalid input" : "Got " + value);
    }
}

Alles zusammenführen

Ein robuster Ablauf für Eingaben validiert mit TryParse, verwendet bei einem Fehler einen Standardwert und führt anschließend die Berechnung sicher durch.

using System;

class Program
{
    static int ReadAge(string input)
    {
        if (int.TryParse(input, out int age) && age >= 0)
            return age;
        return 0;   // safe default
    }

    static void Main()
    {
        Console.WriteLine("Age: " + ReadAge("28"));
        Console.WriteLine("Age: " + ReadAge("bad"));
    }
}

Kurzer Test

Testen Sie Ihr Verständnis von Parsen und Konvertierung.

Rückblick

Konvertieren Sie Text mit int.Parse in Zahlen, wobei bei ungültigen Eingaben eine Ausnahme ausgelöst wird, mit int.TryParse, das sicher ist und einen bool-Wert sowie ein out-Ergebnis zurückgibt, oder mit der Klasse Convert, die null verarbeitet, Gleitkommazahlen rundet und viele Typen konvertiert. Bevorzugen Sie TryParse für nicht vertrauenswürdige Eingaben und ToString() für die umgekehrte Richtung.

using System;

class Program
{
    static void Main()
    {
        if (int.TryParse("99", out int n))
            Console.WriteLine("Value: " + n);
        Console.WriteLine("Convert: " + Convert.ToInt32("7"));
    }
}

Häufig gestellte Fragen

Ist die Lektion „Die Convert-Klasse und Parsing“ kostenlos?

Ja — der vollständige Text von „Die Convert-Klasse und Parsing“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des C# Academy-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der C# Academy-Kurs umfasst insgesamt 4 Lektionen.

Was lerne ich in „Die Convert-Klasse und Parsing“?

Parsen und konvertieren Sie mit Convert und TryParse. Du übst C# Academy mit praktischem Code, den du direkt im Browser ausführst, und ein 24/7 KI-Tutor beantwortet deine Fragen während du die Lektion bearbeitest.

Brauche ich Erfahrung, um C# Academy zu starten?

Keine Vorkenntnisse erforderlich. C# Academy auf CoddyKit ist für Anfänger bis fortgeschrittene Lernende strukturiert, sodass du hier starten oder von Anfang an beginnen und in deinem eigenen Tempo voranschreiten kannst. Dies ist Lektion 4 von 4.

Wie lange dauert die Lektion „Die Convert-Klasse und Parsing“?

Die meisten CoddyKit-Lektionen dauern etwa 5–10 Minuten. Jede ist kompakt und interaktiv, sodass du stetig Fortschritte machst und genau dort weitermachst, wo du aufgehört hast – im Web und in der App.

Kann ich in dieser C# Academy-Lektion Code schreiben und ausführen?

Ja. Jede C# Academy-Lektion enthält einen integrierten Code-Editor, sodass du echten Code direkt in deinem Browser schreibst und ausführst und sofort KI-Feedback erhältst — ohne lokale Einrichtung erforderlich.

Alle Lektionen in diesem Kurs

  1. Wertetypen versus Referenztypen
  2. Boxing und Unboxing
  3. Implizite und explizite Konvertierungen
  4. Die Convert-Klasse und Parsing
← Zurück zu C# Academy