0

このプログラムのユーザーに、任意のディレクトリから 2 つのテキスト ファイルを選択するように要求する必要があります。次に、作成したリスト ビューにそれらを表示する必要があります。ファイル 1 は最初の列にロードする必要があり、ファイル 2 は 2 番目の列にロードする必要があります。それらは互いに対応します。

現在、複数選択を許可するために次のものがあります

OpenFileDialog.Multiselect = True

私が問題を抱えているのは、これらの一意のファイルを対応する列に分離することです。たとえば、次のコードは、最初のファイルの内容を最初の列に非常に効果的にロードします。

        Dim fileName As String = OpenFileDialog.FileName

        fileReader = New StreamReader(fileName)

        Do While fileReader.Peek() <> -1
        firstFile = fileReader.ReadLine & vbNewLine
        ListView1.Items.Add(firstFile)

        Loop

2 番目のファイルを選択すると、最初のファイルの内容が同じ列内で 2 番目のファイルの内容に置き換えられます。

配列の使用を検討しましたが、一意のファイルを各インデックスにロードする方法がわかりません。

ここからどこへ行けばいいのかよくわかりません。

4

1 に答える 1

3

使用するとき

OpenFileDialog1.Multiselect = true

選択したすべてのファイルは、すでにコレクションとして に保存されていますOpenFileDialog1.FileNames。すべての値をループしてリストビューに入れます。

ListView1.Items.Clear
Dim file as string
For Each file in OpenFileDialog1.FileNames
    ListView1.Item.Add(file)
Next

ファイルの内容を異なる列に表示したい場合は、コードを少し変更する必要があるかもしれません

    Dim fileName As String = OpenFileDialog.FileName

    fileReader = New StreamReader(fileName)

    Dim FileItem As New ListViewItem
    Do While fileReader.Peek() <> -1
        firstFile = fileReader.ReadLine & vbNewLine

        FileItem .SubItem.Add(firstFile)

    Loop
    ListView1.item.add(Item)

ただし、項目を追加する前に、ListView1 で列を宣言する必要がある場合があります。ListView1で列が定義されていない場合、ファイルの内容をsubItemに入れても列を表示することはできません

于 2012-04-19T01:42:23.140 に答える