zoukankan      html  css  js  c++  java
  • 在C#中将String转换成Enum:

    一:  在C#中将String转换成Enum:

       object Enum.Parse(System.Type enumType, string value, bool ignoreCase);
       所以,我们就可以在代码中这么写:
     enum Colour
       {
          Red,
          Green,
          Blue
       } 
    
       // ...
       Colour c = (Colour) Enum.Parse(typeof(Colour), "Red", true);
       Console.WriteLine("Colour Value: {0}", c.ToString());
    
       // Picking an invalid colour throws an ArgumentException. To
       // avoid this, call Enum.IsDefined() first, as follows:
       string nonColour = "Polkadot";
    
       if (Enum.IsDefined(typeof(Colour), nonColour))
          c = (Colour) Enum.Parse(typeof(Colour), nonColour, true);
       else
          MessageBox.Show("Uh oh!");
       二:  在C#中将转Enum换成String
        object Enum.GetName(typeof(enumType), value);
        所以,在以上的例子中我们就可以这样写:
       string c2string=Enum.GetName(typeof(Colour), c);
    注:有意思的是,我注意到 Enum.IsDefined()没有提供ignoreCase 的变量,如果你不知道大小写是不是正确,好像你只能去用Parse方法去转换了,然后捕获ArgumentException,这种方法不是最理想的,因为它会稍微有点慢,也许是设计的一个漏洞吧。
  • 相关阅读:
    从当前url替换获得新的url
    访问者模式
    备忘录模式
    make makefile cmake qmake 区别
    qt编译过程
    tensorflow前处理
    tesorflow操作
    tensorflow的object_detection安装
    tensorflow 编译与训练
    tensorflow后处理
  • 原文地址:https://www.cnblogs.com/xdot/p/5239517.html
Copyright © 2011-2022 走看看