C# 将字符串的输出转换为数值
我有以下代码C# 将字符串的输出转换为数值,c#,C#,我有以下代码 Call.Direction CallDir = details.dir; 输出为In或out 我的问题是如何将输出转换为以下内容: 如果CallDir值在==>中,则显示0 如果CallDir值为Out==>则显示1 好的,如果您想基于枚举返回不同的值,只需执行以下操作: return CallDir == Call.Direction.In ? 0 : 1; 但是,如果您所说的是details.dir是一个In或Out字符串,您需要将其放入枚举中,然后执行以下操作: C
Call.Direction CallDir = details.dir;
输出为In
或out
我的问题是如何将输出转换为以下内容:
- 如果CallDir值在==>中,则显示0
- 如果CallDir值为Out==>则显示1
枚举返回不同的值,只需执行以下操作:
return CallDir == Call.Direction.In ? 0 : 1;
但是,如果您所说的是details.dir
是一个In
或Out
字符串,您需要将其放入枚举中,然后执行以下操作:
Call.Direction CallDir;
if (!enum.TryParse<Call.Direction>(details.dir, out CallDir))
{
// set it to some default value because it failed
}
Call.Direction CallDir;
如果(!enum.TryParse(details.dir,out CallDir))
{
//将其设置为某个默认值,因为它失败
}
除了Michael所说的,如果您的enum
是用适当的值定义的,您可以简单地将其转换为int
enum CallDirection { In = 0, Out = 1 }
var dir = CallDirection.In;
Console.Write((int)dir); // "0"
什么是呼叫方向
;一个枚举
?如果是,请显示其定义。是的,它是一个枚举,用于呼叫方向