Sehr oft müssen wir einen String in ein Integer Datentypen umwandeln. Dafür gibt es einige Herangehensweisen in C#, von denen ich dir hier drei vorstellen möchte.
1. In C# String zu Integer umwandeln mit Parse
Mit der Methode Parse kannst du einfach einen String übergeben. Die Ausgabe erfolgt im folgenden Beispiel als Int32.
string str = "1024"; int parse = Int32.Parse(str); Console.WriteLine(parse); // 1024
Parse steht übrigens auch für Int16 und Int64 zur Verfügung. Beim Aufruf der Methode kann es durchaus zu Fehlern kommen, die du in einem try-catch-Block abfangen kannst.
string str_1 = "asdf"; try { int parse_1 = Int32.Parse(str_1); } catch { Console.WriteLine("Konvertierung nicht möglich"); } // Konvertierung nicht möglich
2. Mit der C# TryParse Methode überprüfen ob die Konvertierung gelungen ist
Im Gegensatz zu Parse gibt TryParse einen booleschen Wert zurück, der angibt, ob die Konvertierung gelungen ist. Das konvertierte Ergebnis erhältst du über einen out-Parameter.
string str = "1024"; bool erfolg = Int32.TryParse(str, out int i); Console.WriteLine(erfolg); // True Console.WriteLine(i); // 1024
Entsprechend kannst du TryParse mit if statt try-catch verwenden.
string str_1 = "asdf"; if(Int32.TryParse(str_1, out int i_1)) { Console.WriteLine(i_1); } else { Console.WriteLine("Konvertierung nicht möglich"); } // Konvertierung nicht möglich
Diese Methode gibt es ebenfalls für Int16 und Int64.
3. In C# String zu Int umwandeln mit Convert
Weiterhin gibt es noch die Klasse Convert. Diese beinhaltet Methoden für die Konvertierung vieler Basisdatentypen in andere Basisdatentypen.
string str = "1024"; int parse = Convert.ToInt32(str); Console.WriteLine(parse); // 1024
Diese solltest du ebenfalls in einem try-catch-Block anwenden.
string str_1 = "asdf"; try { int parse_1 = Convert.ToInt32(str_1); } catch { Console.WriteLine("Konvertierung nicht möglich"); } // Konvertierung nicht möglich
Eine vollständige Liste der Methoden von Convert findest du hier: https://docs.microsoft.com/de-de/dotnet/api/system.convert?view=netcore-3.1#methods
4. Fazit
Einen String in einen Integer zu konvertieren fällt uns in C# einfach. Mit Parse, TryParse und den Methoden der Klasse Convert stehen uns mindestens 3 Möglichkeiten zur Verfügung.
Wenn du noch Fragen, Anmerkungen, Lob oder Kritik hast, schreib mir bitte einen Kommentar.
Schreibe einen Kommentar