Visual Basicは、ファイルを開くと、私のコードで何が間違っているのですか?

StackOverflow https://stackoverflow.com/questions/1049828

  •  20-08-2019
  •  | 
  •  

質問

文は私が間違って何をやってんだ?

、「Expressionが方法ではありません」と表示されている場合内の

'読者

おかげ

 Dim reader As New CSVReader

        OpenFileDialog2.Filter = "CSV File (*.csv)|*.csv"
        OpenFileDialog2.RestoreDirectory = True
        If OpenFileDialog2.ShowDialog() = DialogResult.OK Then

            reader(OpenFileDialog2.FileName)
            reader.DisplayResults(DataGridView1)
            'Return OpenFileDialog2.FileName
        Else
        End If

私は単純に点心を移動し、それが働いています。

OpenFileDialog2.InitialDirectory = "a:"
OpenFileDialog2.Filter = "CSV File (*.csv)|*.csv"
OpenFileDialog2.RestoreDirectory = True
If OpenFileDialog2.ShowDialog() = DialogResult.OK Then
    Dim reader As New CSVReader(OpenFileDialog2.FileName)
    reader.DisplayResults(DataGridView1)
    'Return OpenFileDialog2.FileName
Else
End If

おかげ

役に立ちましたか?

解決

この行でます:

reader(OpenFileDialog2.FileName)

あなたはすでに構築されているオブジェクトにコンストラクタを呼び出すようにしようとしています。それは不可能ですので、VBコンパイラを使用すると、それが機能したかのようにリーダーオブジェクトを呼び出そうとしてこれを解釈されます。

あなたが実際にそれを構築するときにコンストラクタに名を渡すことができるようにあなたは、ファイル名を持つまでだけのようなので、リーダーを宣言していません。

    OpenFileDialog2.Filter = "CSV File (*.csv)|*.csv"
    OpenFileDialog2.RestoreDirectory = True
    If OpenFileDialog2.ShowDialog() = DialogResult.OK Then

        Dim reader As New CSVReader(OpenFileDialog2.FileName)
        reader.DisplayResults(DataGridView1)
        'Return OpenFileDialog2.FileName
    Else
    End If

他のヒント

は、reader(OpenFileDialog2.FileName)でメソッド名を逃しています。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top