我目前的代码是:
Dim currentversion As String = File.ReadAllText("C:\lol\update\currentversion.txt")
Dim newversion As String = File.ReadAllText("C:\lol\update\new.txt")
If currentversion Is newversion Then
MessageBox.Show("VERSION IS THE SAME")
End If
If currentversion Is Not newversion Then
MessageBox.Show("VERSION IS NOT THE SAME")
End If
为什么字符串不一样?怎么了? 在两个文本文件中都是相同的MEGA链接,例如“https://mega.nz/#!i8NgdfgdfgvufFf638vqGt7sA_yGdrefdgeVrnf_E3434”(链接现在不是真实的)。 谢谢你的帮助!
Hannir
更新
原因是一个文件有一个空行。我刚刚使用
修复了它currentversion = currentversion.Trim()
格尔茨, Hannir
答案 0 :(得分:3)
因为他们是不同的对象:
Dim currentversion
Dim newversion
单独的变量,内存中的单独实例,单独的引用。 the Is
operator比较引用,而不是值。如果您想比较这些值,则需要查找等于运算符:
If currentversion = newversion Then
'...
Else
'...
End If
或者.Equals()
或许If currentversion.Equals(newversion) Then
'...
Else
'...
End If
取决于被比较的对象以及它们是否实现:
{{1}}
除此之外,字符串可能不等于。毕竟,他们正在从不同的文件中读取......