枚舉值轉換(字符串轉換爲枚舉和整數轉換爲枚舉)

假設定義了一個這樣的枚舉類型:

enum MyEnum { aa = 1, bb = 2 }

1、字符串轉換爲枚舉:

    string strA = "aa";
    MyEnum myEnum = (MyEnum)Enum.Parse(typeof(MyEnum), strA);

上面的方法是區分大小寫的,也就是說,如果strA的值爲“AA”,則轉換失敗;如果不需要區分大小寫,需要使用下面的方法:

    string strA = "aa";
    MyEnum myEnum = (MyEnum)Enum.Parse(typeof(MyEnum), strA, true);

當最後一個參數設置爲true時忽略大小寫

注意:
調用改方法時,如果strA字符串不存在於枚舉中,則會報異常,可以用try……catch捕捉一下,如下:

         MyEnum  myEnum ;
  try
  {      
              string strA = "aa";
              MyEnum myEnum = (MyEnum)Enum.Parse(typeof(MyEnum), strA, true);
  }
  catch (Exception)
  {
     //TODO
  }


2、整數轉換爲枚舉值

    int iA = 2;
    MyEnum myEnum = (MyEnum)iA;

這種方法可以將一個整數轉換爲枚舉類型;如果iA不是一個有效的枚舉值,則轉換失敗。



原文地址:http://www.cnblogs.com/youring2/archive/2011/05/23/2054445.html



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章