比较3个列表

时间:2013-02-02 22:48:27

标签: vb.net

我有Listbox1个文件名,
Listbox2Listbox3以及其他一些文件名。

现在我需要检查列表框2中是否找到Listbox1中的项目

  • 如果在Listbox2中找不到任何内容
  • 如果未在Listbox2中找到,请搜索Listbox3
  • 仍未找到,然后将项目添加到Listbox2

来自Listbox1的下一项,也是如此,等等。

如何做到最聪明?

1 个答案:

答案 0 :(得分:1)

因此,您要将文件名从ListBox1添加到ListBox2,这些文件名既不在ListBox2也不在ListBox3Concat列出并使用Enumerable.Except

Dim otherPaths = Listbox2.Items.Cast(Of String).Concat(Listbox3.Items.Cast(Of String))
Dim onlyInListbox1 = Listbox1.Items.Cast(Of String).Except(otherPaths)
For Each path In onlyInListbox1
    Listbox2.Items.Add(path)
Next