将字符串输出转换为数字值

时间:2013-11-17 03:02:30

标签: c#

我有以下代码

Call.Direction CallDir = details.dir; 

,输出为Inout

我的问题如何将输出转换为如下:

  • 如果CallDir值为In ===>显示0
  • 如果CallDir值为Out ===>显示1

2 个答案:

答案 0 :(得分:3)

好的,如果您想根据enum返回其他值,请执行以下操作:

return CallDir == Call.Direction.In ? 0 : 1;

但是,如果您所说的details.dirInOut的字符串,您需要将其转换为enum,请执行以下操作:

Call.Direction CallDir;
if (!enum.TryParse<Call.Direction>(details.dir, out CallDir))
{
    // set it to some default value because it failed
}

答案 1 :(得分:2)

除了Michael所说的,如果您的enum定义了适当的值,您只需将其转换为int

enum CallDirection { In = 0, Out = 1 }

var dir = CallDirection.In;

Console.Write((int)dir); // "0"