该程序一直向我显示"错误的用户名" MSGBOX。我比较" navn"反对文件。我写了正确的用户名和密码,但msgbox不断弹出
Dim R As IO.StreamReader
Dim LogInSom As String
Dim Navn As String
Dim Kode As String
Dim OKnavn As Boolean
Dim Kode2 As String
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Navn = InputBox("Write your username")
Dim directorry = "C:\Klub-Oversigt\Spillere\"
Dim filees() As System.IO.FileInfo
Dim dirinffo As New System.IO.DirectoryInfo(directorry)
filees = dirinffo.GetFiles("*", IO.SearchOption.AllDirectories)
For Each file In filees
If Navn Is file Then
OKnavn = True
Exit For
Else
OKnavn = False
End If
Next
Kode = InputBox("Write your pass")
If OKnavn = True Then
R = New IO.StreamReader("C:\Klub-Oversigt\Spillere\" & Navn & ".txt")
Kode2 = R.ReadToEnd()
R.Close()
If Kode Is Kode2 Then
MsgBox("Kode og brugernavn accepteret!", MsgBoxStyle.Information)
Else
MsgBox("Wrong pass!")
End If
Else
MsgBox("Wrong username." & Chr(13) & "Hvis du er sikker på du har skrevet rigtigt, kan du være banned", MsgBoxStyle.Critical, "Fejl!")
End
End If
答案 0 :(得分:1)
Navn
是String
,file
是FileInfo
。您需要将Navn
与file.Name
进行比较。
具体来说,您需要使用比较运算符进行相等(=
)。您不正确地使用Is
operator来检查引用相等,而在这种情况下,这不是您想要的。
此外,用户输入和文件名之间的字符串比较无法考虑每个文件名中将出现的.txt
扩展名。