Vb.net Visual Basic,打开文件,我的代码有什么问题?

Vb.net Visual Basic,打开文件,我的代码有什么问题?,vb.net,openfiledialog,Vb.net,Openfiledialog,if语句中的“reader”表示“表达式不是方法”,我做错了什么 谢谢 Dim reader As New CSVReader OpenFileDialog2.Filter = "CSV File (*.csv)|*.csv" OpenFileDialog2.RestoreDirectory = True If OpenFileDialog2.ShowDialog() = DialogResult.OK Then re

if语句中的“reader”表示“表达式不是方法”,我做错了什么

谢谢

 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

谢谢

您在这一行的
阅读器(OpenFileDialog2.FileName)
中遗漏了方法名称:

 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
reader(OpenFileDialog2.FileName)
您试图对已构造的对象调用构造函数。这是不可能的,因此当您试图调用reader对象时,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