我正在尝试在最初从枚举
开始的对象中获得状态标志Public Enum Status
Enabled = 89
Disabled = 78
Unknown = 0
End Enum
Public Sub Convert()
'Something
Output.status = Convert.ToChar(Convert.ToInt32(Status.Unknown)).ToString().Trim()
End Sub
虽然启用/禁用的工作方式类似于冠军,其输出= Y / N,但“未知'状态返回" "
无法修剪,然后在\u0000
之后变为System.Runtime.Serialization.Json.DataContractJsonSerializer
我无法在Google上搜索原因/解决方案,我可能知道为什么会这样,我怎么能按预期得到空字符串?
谢谢你的时间!
答案 0 :(得分:1)
如果您将0
转换为char,则会获得'\0'
,即二进制零。您似乎想要一个空格字符,即32
(0x20
)。
因此,您可以将Status.Unkown
声明为32
Public Enum Status
Enabled = 89
Disabled = 78
Unknown = 32 // white space
End Enum
或者在字符串转换时需要额外的处理。