在C#中,与VB语句短语"Chr(0)"等效的是什么?

9
任何帮助都会感谢。在C#中,VB语句表达式 Chr(0)的等效内容是什么?

2
即使在VB6中,Chr(0)也不是最佳选项,您应该使用vbNullChar常量,因为它不需要运行时评估。 - Deanna
4个回答

14

我相信它的等价物是'\0'

我删除了评论,因为我认为在帖子中更新更加合适 :)

sValue = vValue + Chr(0) 'As mentioned in your comment

可以写成

sValue += "\0";

没问题 :) 已删除评论并更新了上面的帖子。 - Siddharth Rout
@MarkJ:那不是我的代码。这只是OP在评论中提供的一个例子。 - Siddharth Rout
好的。所以你指的是在我看这个问题之前被删除的评论?那很令人困惑。我们怎么知道==是来自于 OP 呢?也许你可以将其编辑到你的答案中。 - MarkJ
值得一提的是,这仅适用于0-127之间的值。VB6 [Chr](http://msdn.microsoft.com/en-us/library/aa262692(v = vs.60).aspx)使用当前系统代码页中的ANSI字符代码,而不是Unicode字符代码。这意味着您答案中的任何替代方案都不适用于其他值。您需要导入Microsoft.VisualBasic并使用[Chr](http://msdn.microsoft.com/en-us/library/613dxh46(v = vs.90).aspx)。 (+1 BTW) - MarkJ

8
你可以使用(char)0。当然,你也可以使用'\0'。如果你想调用一个方法,可以使用Convert.ToChar(0)

1
值得一提的是,这仅适用于0-127范围内的值。VB6 [Chr](http://msdn.microsoft.com/en-us/library/aa262692(v = vs.60).aspx)使用当前系统代码页中的ANSI字符代码,而不是Unicode字符代码。这意味着您答案中的任何替代方案都不适用于其他值。VB6具有ChrW函数,可接受Unicode字符代码。 - MarkJ

2
相当于 (char)0 。如果你正在寻找转义序列和其他字符,可以使用 \n 等。

-2
sValue == vValue + Strings.Chr(0)

你可以尝试自己使用此网站

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接