7

我有一个代码 -

strTest="    "    
IsNull(Trim(strTest)) 

它在 VB6 中返回False 。

我将此代码写到 VB.net 但是

IsNull(修剪(strTest))

返回True
那么, VB6 中的IsNull(Trim(" ")) = ?? 在 VB.net
谢谢。

4

1 回答 1

9

VB.Net中没有IsNull函数。相反,它有其他的东西,比如String.IsNullOrEmpty函数和String.Empty属性等,用于找出字符串是否为空。

IsNull在 VB6/VBA 中表示表达式是否不包含有效数据。您正在进入Falsevb6,因为您已经初始化了strTest. 它包含一个空字符串。你可能还想看这个

VB6

IsNull(Trim(strTest)) 

在 VB.Net 中,IsNullOrEmpty指示指定的字符串是字符串Nothing还是Empty字符串。

VB.NET

If String.IsNullOrEmpty(strTest.Trim) Then DoWhatever
If strTest.Trim = String.Empty Then DoWhatever
If strTest.Trim = "" Then DoWhatever      '<~~ Same in VB6 as well
If String.IsNullOrWhiteSpace(strTest) Then DoWhatever  '<~~ VB2010 onwards only

所有这些都将True在 VB.Net 中返回,因为字符串为ISEMPTY。你可能想看这个

如果您的字符串值是所有空格,那么要么strTest.Trim()在使用前 3 个选项之前使用,要么直接使用第 4 个选项来检查它是否为空,或空字符串或仅所有空格。

于 2013-10-10T07:15:42.303 回答