Vb.net 如何将布尔类型转换为;关于&引用;关「;使用String.Format
是否有任何方法可以使用字符串格式化程序将布尔类型转换为“开”/“关”,如:Vb.net 如何将布尔类型转换为;关于&引用;关「;使用String.Format,vb.net,formatting,conditional,string-formatting,Vb.net,Formatting,Conditional,String Formatting,是否有任何方法可以使用字符串格式化程序将布尔类型转换为“开”/“关”,如: Dim inpValue as Boolean Dim outValue = String.Format("0:ON;OFF", inpValue) ' should show OFF as output 没有代码或IFormatProvider?您无法使用String.Format(如果不实现这一点,就您的目的而言,这似乎是一种过分的做法),但您可以使用以下命令在一行中完成: 就我个人而言,我建议使用If/Else语
Dim inpValue as Boolean
Dim outValue = String.Format("0:ON;OFF", inpValue)
' should show OFF as output
没有代码或IFormatProvider?您无法使用String.Format(如果不实现这一点,就您的目的而言,这似乎是一种过分的做法),但您可以使用以下命令在一行中完成: 就我个人而言,我建议使用If/Else语句而不是IIf,因为对于一些来自其他语言的程序员来说,IIf并不直观。这应该可以帮助您:
据我所知,没有任何内置支持。但是,根据控制的程度,您可以创建自己的格式提供程序()。这里有一个关于这个问题的讨论链接:。有什么问题:
Dim inpValue as Boolean
Dim outValue = If(inpValue, "ON", "OFF")
c#-不是最优雅但最有效的:
字符串outValue=inpValue.ToString().Replace(“False”、“OFF”).Replace(“True”、“ON”) 这里有一个来自的疯狂把戏,但它完全不可读。我强烈建议你不要这样做!如果你有神经质,现在就停止阅读
String.Format("{0:ON;ON;OFF}", CDbl(inpValue))
这将
布尔值
转换为-1
或0
,然后使用。我的眼睛在流血!字符串操作是一个非常糟糕的逻辑实现。毫无疑问(正如我承认的)。对不起你的眼睛!VB的IIf的C#等价物:var outValue=inpValue?“开”:“关”;
String.Format("{0:ON;ON;OFF}", CDbl(inpValue))