比较字符串时出错

时间:2013-05-07 15:14:54

标签: vb.net string

我有一个名为str的字符串,在我看来,当我使用代码时,它等于“Administrator”:

Dim AdminSTR As String = "Administrator"
    If str.ToString = AdminSTR Then
        Home.CurrentUser.Text = "Current User: " & UsernameTextBox.Text
        Home.CurrentUserSTR = UsernameTextBox.Text
        Home.AccessLBL.Text = " | Level: " & str
        Home.Show()
    Else
        ClientForm.Show()
    End If

它指引我ClientForm。虽然它应该引导我到我的Home表格。为什么会这样?

由于

3 个答案:

答案 0 :(得分:4)

猜测,也许它是“管理员”,而.NET默认情况下是区分大小写的。或者你在开头/结尾有空格:

If "Administrator".Equals(str.Trim(), StringComparison.OrdinalIgnoreCase) Then
    Home.CurrentUser.Text = "Current User: " & UsernameTextBox.Text
    Home.CurrentUserSTR = UsernameTextBox.Text
    Home.AccessLBL.Text = " | Level: " & str
    Home.Show()
Else
    ClientForm.Show()
End If

答案 1 :(得分:0)

使用Compare()

If String.Compare(str, AdminSTR) = 0 Then

答案 2 :(得分:0)

我修好了!我有一行代码,在它的开头添加了一个“”,以防止它成为空值。感谢所有帮助!尤其是@TimSchmelter,用于指出案例和白色空间!投票了! :)