在VB6和VB.net中是IsNull

时间:2013-10-10 06:29:05

标签: vb.net vb6 migration isnull

我有一个代码 -

strTest="    "    
IsNull(Trim(strTest)) 

在VB6中返回 False

我把这段代码写到VB.net 但是

  

ISNULL(修剪(strTest))

返回 True 所以, VBG中VB6 = ?? IsNull(修剪(“”))
谢谢。

1 个答案:

答案 0 :(得分:9)

VB.Net中没有IsNull函数。相反,它还有String.IsNullOrEmpty函数和String.Empty属性等其他内容,用于查找字符串是否为空。

VB6 / VBA中的

IsNull表示表达式是否包含无效数据。您已在vb6中获得False,因为您已初始化strTest。它包含一个空字符串。您可能还想查看THIS

<强> 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

所有这些都将在VB.Net中返回True,因为字符串IS EMPTY。您可能希望看到THIS

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