Vorgehensweise: Suchen der Unterschiedsmenge zwischen zwei Listen (LINQ) (Visual Basic)
In diesem Beispiel wird veranschaulicht, wie Sie mit LINQ zwei Listen mit Zeichenfolgen vergleichen und die Zeilen ausgeben, die in names1.txt, aber nicht in names2.txt enthalten sind.
So erstellen Sie die Datendateien
- Kopieren Sie „names1.txt“ und „names2.txt“ wie unter Vorgehensweise: Kombinieren und Vergleichen von Zeichenfolgensammlungen (LINQ) (Visual Basic) beschrieben in Ihren Projektmappenordner.
Beispiel
Class CompareLists
Shared Sub Main()
' Create the IEnumerable data sources.
Dim names1 As String() = System.IO.File.ReadAllLines("../../../names1.txt")
Dim names2 As String() = System.IO.File.ReadAllLines("../../../names2.txt")
' Create the query. Note that method syntax must be used here.
Dim differenceQuery = names1.Except(names2)
Console.WriteLine("The following lines are in names1.txt but not names2.txt")
' Execute the query.
For Each name As String In differenceQuery
Console.WriteLine(name)
Next
' Keep console window open in debug mode.
Console.WriteLine("Press any key to exit.")
Console.ReadKey()
End Sub
End Class
' Output:
' The following lines are in names1.txt but not names2.txt
' Potra, Cristina
' Noriega, Fabricio
' Aw, Kam Foo
' Toyoshima, Tim
' Guy, Wey Yuan
' Garcia, Debra
Einige Arten der Abfragevorgänge in Visual Basic, z. B. Except, Distinct, Union und Concat, können nur in methodenbasierter Syntax ausgedrückt werden.
Kompilieren des Codes
Erstellen Sie ein Visual Basic-Konsolenanwendungsprojekt mit einer Imports
-Anweisung für den System.Linq-Namespace.
Siehe auch
Zusammenarbeit auf GitHub
Die Quelle für diesen Inhalt finden Sie auf GitHub, wo Sie auch Issues und Pull Requests erstellen und überprüfen können. Weitere Informationen finden Sie in unserem Leitfaden für Mitwirkende.