开发者

If Not String.Empty ignoring empty string - VB.NET

开发者 https://www.devze.com 2023-01-11 07:53 出处:网络
开发者_运维百科I have a array of strings and I am looping through them, but the string might be empty so I am trying this:

开发者_运维百科I have a array of strings and I am looping through them, but the string might be empty so I am trying this:

For Each Component As String In Components
    If Component IsNot String.Empty Then
        'Work your magic
    End If
Next

But if Component is an empty string the logic still fires. I've also tried

If Component <> "" Then 

End If

With the same results. So what am I missing?


  1. Make sure that your List is of type string
  2. Use the String.IsNullOrEmpty method.

    Sub Main
        Dim foo As String
        foo = "Non-Empty string"
        If Not String.IsNullOrEmpty(foo) Then
            Console.WriteLine("Foo is not empty.")
        End If
    End Sub
    


One thing that has gotten me before is spaces. You can't see it when you view the variable in the watch window, but it makes the string not empty or null.


Do your string have default values and are they actually ""? What if you used:

If Not Component Is Nothing Then

End If
0

精彩评论

暂无评论...
验证码 换一张
取 消

关注公众号