gpt4 book ai didi

c# - 在 C# 中将字符串转换为标志枚举

转载 作者:太空狗 更新时间:2023-10-29 23:59:15 26 4
gpt4 key购买 nike

设备将其限位开关的状态报告为一系列 1 和 0(表示包含“010111110000”的字符串)。这些开关的理想表示是像这样的标志枚举:

[Flags]
public enum SwitchStatus
{
xMin,
xMax,
yMin,
yMax,

aMax,
bMax,
cMax,
unknown4,

unknown3,
unknown2,
unknown1,
unknown0
}

是否可以将字符串表示形式转换为枚举?如果是,怎么办?

最佳答案

您可以使用 Convert.ToInt64(value, 2)Convert.ToInt32(value, 2) 这将为您提供 long 或 int,然后只需使用

[Flags]
public enum SwitchStatus : int // or long
{
xMin = 1,
xMax = 1<<1,
yMin = 1<<2,
yMax = 1<<3,
...
}

SwitchStatus status = (SwitchStatus)Convert.ToInt32(value, 2);

关于c# - 在 C# 中将字符串转换为标志枚举,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6625084/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com