C# 将字符串转为枚举
时间: 2023-09-15 16:20:04 浏览: 313
可以使用 Enum.Parse() 方法将字符串转换为枚举类型的值。这个方法接收一个参数表示要转换的枚举类型,一个参数表示要转换的字符串,以及一个可选的参数指定是否忽略大小写。
以下是一个示例代码:
```csharp
enum Fruit
{
Apple,
Banana,
Orange
}
// 将字符串转换为枚举类型
string fruitStr = "Banana";
Fruit fruit = (Fruit)Enum.Parse(typeof(Fruit), fruitStr);
Console.WriteLine(fruit); // 输出 "Banana"
```
需要注意的是,如果要转换的字符串不是枚举中定义的值,则会抛出 ArgumentException 异常。因此,在使用 Enum.Parse() 进行字符串转换时,需要确保字符串的值是有效的枚举值。
相关问题
c#将字符串变成枚举值举例说明
与将字符转换为枚举值类似,将字符串转换为枚举值也可以使用C#中的Enum.Parse方法。下面是一个示例:
```csharp
enum Color
{
Red,
Green,
Blue
}
class Program
{
static void Main(string[] args)
{
string colorStr = "Green";
Color color = (Color)Enum.Parse(typeof(Color), colorStr);
Console.WriteLine(color); // 输出 "Green"
}
}
```
在上面的示例中,首先定义了一个枚举类型Color,包含了Red、Green和Blue三个枚举常量。然后在Main方法中,定义了一个字符串类型的变量colorStr,并将其赋值为"Green"。接着使用Enum.Parse方法将colorStr转换为对应的枚举常量,注意需要指定枚举的类型,然后将转换后的枚举值赋值给color变量。最后输出color变量的值,即"Green"。如果传入的字符串参数不是枚举类型中定义的常量名称,则会抛出ArgumentException异常。
C#字符串转化为枚举型
要将字符串转换为枚举类型,可以使用Enum.Parse方法。这个方法接受两个参数,第一个参数是要转换的枚举类型,第二个参数是要转换的字符串。
以下是一个示例代码,演示如何将字符串转换为枚举类型:
```csharp
using System;
enum DayOfWeek
{
Monday,
Tuesday,
Wednesday,
Thursday,
Friday,
Saturday,
Sunday
}
class Program
{
static void Main()
{
string dayString = "Wednesday";
DayOfWeek day = (DayOfWeek)Enum.Parse(typeof(DayOfWeek), dayString);
Console.WriteLine($"The day is: {day}");
}
}
```
在这个示例中,我们定义了一个DayOfWeek的枚举类型,表示一周中的某一天。然后,我们声明一个字符串变量dayString,它包含了要转换的字符串"Wednesday"。接下来,我们使用Enum.Parse方法将dayString转换为DayOfWeek类型的枚举值,并将结果赋值给day变量。
最后,我们打印出转换后的枚举值。
运行上述代码,输出将如下所示:
```
The day is: Wednesday
```
这样,你就可以将字符串成功地转换为枚举类型了。请确保要转换的字符串与枚举类型中的成员名称匹配,否则会抛出异常。
阅读全文