c#枚举转化示例大全,数字或字符串转枚举

c#枚举转化示例大全,数字或字符串转枚举,本文重点举例说明C#枚举的用法,数字转化为枚举、枚举转化为数字及其枚举数值的判断,以下是具体的示例:

先举两个简单的例子,然后再详细的举例说明:

字符串转换成枚举:DayOfWeek week= (DayOfWeek)Enum.Parse(typeof(DayOfWeek), "Friday");
数字转换成枚举:DayOfWeek week= (DayOfWeek)5;  //Friday
具体的示例:
定义枚举: 
public enum DisplayType 

  All=10, 
  Up=20, 
  Down=30 
}

 

1.数值转化 
(1)字符转化为枚举 
string str="up"; 
DisplayType displayType; 
displayType=(DisplayType)System.Enum.Parse(typeof(DisplayType),str,true); 
Response.Write(displayType.ToString());

结果是:Up 
Enum.Parse 方法第3个参数,如果为 true,则忽略大小写;否则考虑大小写。

(2)数字转化为枚举 
int i=30; 
DisplayType displayType; 
displayType=(DisplayType)System.Enum.Parse(typeof(DisplayType),i.ToString()); 
Response.Write(displayType.ToString()); 
结果是:Down 
(3)枚举转化为字符 
DisplayType displayType=DisplayType.Down; 
string str=displayType.ToString(); 
Response.Write(str); 
结果是:Down

(4)枚举转化为数字 
方法一: 
DisplayType displayType=DisplayType.Down; 
int i=Convert.ToInt32(displayType.ToString("d")); 
Response.Write(i.ToString());

或者:(int)Enum.Parse(typrof(DisplayType),"Down")
结果是:30

方法二: 
DisplayType displayType=DisplayType.Down; 
int i=((IConvertible)((System.Enum)displayType)).ToInt32(null); 
Response.Write(i.ToString()); 
结果是:30

转自:http://blog.csdn.net/shuilv2000/article/details/6440380

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值