📜  c# 将字符串转换为枚举值 - C# (1)

📅  最后修改于: 2023-12-03 15:13:51.410000             🧑  作者: Mango

C# 将字符串转换为枚举值

在 C# 中,我们可以使用 Enum.Parse 方法将字符串转换为枚举值。以下是示例代码:

string str = "Value1";
MyEnum value = (MyEnum)Enum.Parse(typeof(MyEnum), str);

上面的代码中,我们将字符串 "Value1" 转换为枚举类型 MyEnum 的值。

需要注意的是,字符串必须与枚举项的名称完全匹配,包括大小写。如果字符串与任何枚举项名称都不匹配,则会抛出异常。

如果您需要将字符串转换为枚举值,但不确定字符串是否与枚举项匹配,则可以使用 Enum.TryParse 方法。以下是示例代码:

string str = "Value1";
MyEnum result;
if (Enum.TryParse(str, out result))
{
    // 字符串解析成功,使用枚举值 result
}
else
{
    // 字符串解析失败,处理错误
}

在上面的代码中,我们使用 Enum.TryParse 方法将字符串 "Value1" 转换为枚举类型 MyEnum 的值。如果字符串与任何枚举项名称都不匹配,则 TryParse 方法将返回 false 并将 result 参数设置为枚举类型的默认值。否则,TryParse 方法将返回 true 并将 result 参数设置为字符串对应的枚举值。

总的来说,将字符串转换为枚举值在 C# 中非常简单。只需在代码中使用 Enum.ParseEnum.TryParse 方法即可实现。