C# String in Enum konvertieren
-
C# Konvertierung von
string
inenum
- mit den MethodenEnum.Parse()
undEnum.TryParse()
-
C# Programm zur Konvertierung von
string
in eineenum
mit Ausnahmebehandlung unter Verwendung der MethodeEnum.Parse()
-
C# Programm zur Konvertierung einer
string
in eineenum
unter Verwendung vonEnum.TryParse()
-
C# Programm zur Überprüfung der Existenz von Zeichenkettenwerten mit der Methode
Enum.IsDefined()
- Schlussfolgerung
In C# verwenden wir die Methoden Enum.Parse()
und Enum.TryParse()
, um eine Zeichenkette in eine Aufzählung zu konvertieren. Hier haben wir Beispiele für beide angegeben, aber wir empfehlen Ihnen, die Methode Enum.TryParse()
zu verwenden, wenn Sie eine Zeichenkette in eine Aufzählung konvertieren.
C# Konvertierung von string
in enum
- mit den Methoden Enum.Parse()
und Enum.TryParse()
Um eine Zeichenkette in eine enum
umzuwandeln, können wir die Methode Enum.Parse()
verwenden. Sie müssen sorgfältig System
am Anfang Ihrer Datei einfügen, da Enum.Parse()
eine statische Methode ist.
Der Aufzählungstyp, der Zeichenkettenwert und ein Indikator (optional) sind die Parameter dieser Methode. Die korrekte Syntax für die Verwendung von Enum.Parse()
und Enum.TryParse()
ist die folgende:
EnumName VariableName = (EnumName)Enum.Parse(typeof(EnumName), StringValue);
EnumName VariableName = (EnumName)Enum.Parse(typeof(EnumName), StringValue,
indicator); // indicator can be true or false
// To implement Enum.TryParse()
EnumName VariableName;
Enum.TryParse(StringValue, out VariableName);
Nun werden wir dies in einem C#-Programm implementieren.
C#-Programm zur Konvertierung von string
in eine enum
unter Verwendung von Enum.Parse()
using System;
class Conversion {
enum Flowers { None, Daisy = 1, Lili = 2, Rose = 3 }
static void Main() {
string stringvalue = "Rose";
Flowers Flower = (Flowers)Enum.Parse(typeof(Flowers), stringvalue);
// To check if we have converted successfully
if (Flower == Flowers.Rose) {
Console.WriteLine("The Flower is Rose");
}
}
}
Ausgabe:
The Flower is Rose
Hier haben wir eine Aufzählung mit dem Namen Flowers
, die mehrere Konstanten mit ihren jeweiligen Werten enthält. Wir haben die Methode Enum.Parse()
aufgerufen, um den Zeichenkettenwert Rose
in eine Aufzählung zu konvertieren. Die Methode typeof(Flowers)
gibt den Typ der Aufzählung zurück. Am Ende haben wir geprüft, ob unsere Konvertierung erfolgreich war oder nicht.
Manchmal kann eine Ausnahme auftreten, wenn die Zeichenkette, die wir zu konvertieren versuchen, in der Aufzählung nicht verfügbar ist. Um dies zu vermeiden, werden wir den try-catch
Block verwenden.
C# Programm zur Konvertierung von string
in eine enum
mit Ausnahmebehandlung unter Verwendung der Methode Enum.Parse()
using System;
class Conversion {
enum Flowers { None, Daisy = 1, Lili = 2, Rose = 3 }
static void Main() {
stringvalue = "Jasmine";
try {
Flowers Flower = (Flowers)Enum.Parse(typeof(Flowers), stringvalue);
} catch (Exception ex) {
Console.WriteLine("Not Possible");
// Set value to none
Flower = Flowers.none;
}
}
}
Ausgabe:
Not Possible
C# Programm zur Konvertierung einer string
in eine enum
unter Verwendung von Enum.TryParse()
using System;
enum Flowers { None, Daisy = 1, Lili = 2, Rose = 3 }
class Conversion {
static void Main() {
string stringvalue = "Rose";
// Using Enum.TryParse()
Flowers Flower;
if (Enum.TryParse(stringvalue, out Flower)) {
Console.WriteLine(Flower == Flowers.Rose);
}
}
}
Ausgabe:
True
Wir können auch den Wert der Konstante in enum als Parameter in der Methode Enum.TryParse()
übergeben. Das folgende Programm implementiert dies:
using System;
enum Flowers { None, Daisy = 1, Lili = 2, Rose = 3 }
class Conversion {
static void Main() {
Flowers Flower;
if (Enum.TryParse("3", out Flower)) {
Console.WriteLine(Flower);
}
}
}
Ausgabe:
Rose
Sie können auch prüfen, ob der zu konvertierende String-Wert in enum definiert ist oder nicht, indem Sie die Methode Enum.IsDefined()
verwenden.
C# Programm zur Überprüfung der Existenz von Zeichenkettenwerten mit der Methode Enum.IsDefined()
using System;
enum Flowers { None, Daisy = 1, Lili = 2, Rose = 3 }
class Conversion {
static void Main() {
Console.WriteLine(Enum.IsDefined(typeof(Flowers), "Rose"));
}
}
Ausgabe:
True
Schlussfolgerung
Enum.Parse()
und Enum.TryParse()
sind die Methoden, die verwendet werden, um eine Zeichenkette in eine Aufzählung zu konvertieren. Aber es ist die beste Praxis, Enum.TryParse()
zu verwenden.
Verwandter Artikel - Csharp String
- C# Int in String konvertieren
- Verwendung von Strings in der Switch-Anweisung in C#
- So konvertieren Sie eine Zeichenkette in ein Byte-Array in C#
- Wie konvertiert man eine Zeichenkette in C# in boolesche Zeichenketten
- Wie schreibt man ein mehrzeiliges String-Literal in C#