c# 获取枚举值名称
时间: 2023-09-30 14:08:39 浏览: 44
在 C# 中获取枚举值名称可以使用 Enum.GetName() 方法,示例如下:
```csharp
enum MyEnum
{
Value1,
Value2,
Value3
}
MyEnum myEnum = MyEnum.Value2;
string enumName = Enum.GetName(typeof(MyEnum), myEnum);
Console.WriteLine(enumName); // 输出 Value2
```
也可以使用 Enum.GetNames() 方法获取所有枚举值的名称,示例如下:
```csharp
string[] enumNames = Enum.GetNames(typeof(MyEnum));
foreach (string name in enumNames)
{
Console.WriteLine(name);
}
// 输出 Value1
// 输出 Value2
// 输出 Value3
```
相关问题
c#枚举名称获取枚举
在C#中,可以通过枚举的名称来获取对应的枚举值。以下是一种常见的方法:
1. 使用Enum.Parse方法:可以使用Enum.Parse方法将字符串转换为对应的枚举值。该方法接受两个参数,第一个参数是要转换的枚举类型,第二个参数是要转换的字符串。
示例代码如下:
```csharp
enum Colors
{
Red,
Green,
Blue
}
string colorName = "Green";
Colors color = (Colors)Enum.Parse(typeof(Colors), colorName);
Console.WriteLine(color); // 输出:Green
```
在上面的示例中,我们定义了一个名为Colors的枚举类型,其中包含了Red、Green和Blue三个枚举值。然后,我们将字符串"Green"转换为对应的枚举值,并将其赋值给color变量。
请注意,使用Enum.Parse方法时需要确保传入的字符串与枚举类型中定义的名称完全匹配,包括大小写。
c# 获取枚举指定索引的值
可以使用 `Enum.GetName()` 方法获取枚举中指定索引的名称,然后再使用 `Enum.Parse()` 方法将名称转换为对应的枚举值。示例代码如下:
```csharp
enum MyEnum
{
Value1,
Value2,
Value3
}
int index = 1;
string name = Enum.GetName(typeof(MyEnum), index);
MyEnum value = (MyEnum)Enum.Parse(typeof(MyEnum), name);
```
在上面的例子中,`name` 变量将会被设置为 `"Value2"`,`value` 变量将会被设置为 `MyEnum.Value2`。