vb.net – 如何测试String = Enum.Value?

如何做一个简单的比较枚举值一个应该与枚举名称匹配的字符串?

如何将字符串解析成适当的枚举值.

例如,

Enum A
     B=0
     C=1
     D=2
End Enum

如何检查String = A.C,如何将字符串转换为相应的A值而不将其与字符串表示进行比较?

有几种不同的方法是相关的:
Enum.GetName(typeof(A),A.C) == "C"
A.C.ToString() == "C"
((A)Enum.Parse(typeof(A),"C")) == A.C

前两个将A.C的值转换为字符串表示(“C”),然后将其与字符串进行比较.最后一个将字符串“C”转换为类型A,然后作为实际类型A进行比较.

枚举到字符串:enumValue.ToString()或Enum.GetName(typeof(A),A.C)

字符串到枚举:(A)Enum.Parse(typeof(A),“C”)

注意,如果枚举标记有FlagsAttribute,那么这些都不会有效.

相关文章

Format[$] ( expr [ , fmt ] ) format 返回变体型 format$ 强...
VB6或者ASP 格式化时间为 MM/dd/yyyy 格式,竟然没有好的办...
在项目中添加如下代码:新建窗口来显示异常信息。 Namespace...
转了这一篇文章,原来一直想用C#做k3的插件开发,vb没有C#用...
Sub 分列() ‘以空格为分隔符,连续空格只算1个。对所选...
  窗体代码 1 Private Sub Text1_OLEDragDrop(Data As Dat...