String.Contains Visual Basic 2008或2012中的函数

时间:2013-09-07 21:02:32

标签: vb.net visual-studio-2012

如何在单个.txt文件中找到包含每行不同字符串的唯一字符串?


实施例: .txt文件包含以下

012345
023456
034567
045678
056789

然后我想找到一组数字。


这就是我想要发生的事情〜

Dim stN As String = TextBox1.Text

If stN.contains(.txt file) Then
    'Anything to do here
Else
    MsgBox("Your input number is incorrect", "ERROR")
End If

2 个答案:

答案 0 :(得分:0)

我认为您的伪代码应该是另一种方式:If .txt-file.Contains(stN) Then

所以你想知道一个字符串是否等于文本文件的一行:

Dim lines = File.ReadLines(path)
Dim fileContainsLine = lines.Any(Function(l) l.Trim.Equals(TextBox1.Text, StringComparison.OrdinalIgnoreCase))

如果您不想比较不区分大小写,请使用l==TextBox1.Text。如果Trim也不必要,您可以将其简化为:

Dim fileContainsLine = lines.Contains(TextBox1.Text)

答案 1 :(得分:0)

这是一个小的Linqpad程序,但你可能想要在文件中读取一次并缓存它。

    Sub Main
      If (CheckContains("023456")) Then
        Console.WriteLine("True")
      Else 
        Console.WriteLine("False")
      End If
    End Sub

    Function CheckContains(inputVal as String) as Boolean
      Dim query = From line In File.ReadAllLines("C:\code\so\sample.txt") _
      Select line

      return query.Contains(inputVal)
    End Function