【问题标题】:Visual Basic, Opening a file, what is wrong with my code?Visual Basic,打开文件,我的代码有什么问题?
【发布时间】:2009-06-26 15:39:50
【问题描述】:

if 语句中的“阅读器”显示“表达式不是方法”,我做错了什么?

谢谢

 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

我只是移动了 Dim,它就起作用了。

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

谢谢

【问题讨论】:

    标签: vb.net openfiledialog


    【解决方案1】:

    在这一行:

    reader(OpenFileDialog2.FileName)
    

    您正试图在已构造的对象上调用构造函数。这是不可能的,因此 VB 编译器会在您尝试调用 reader 对象时将其解释为函数。

    在你有文件名之前不要声明阅读器,这样你就可以在实际构造它时将名称传递给构造函数,就像这样

        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
    

    【讨论】:

      【解决方案2】:

      您错过了reader(OpenFileDialog2.FileName) 中的方法名称。

      【讨论】:

        猜你喜欢
        • 2021-08-16
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-07-16
        • 1970-01-01
        • 2020-01-31
        • 2011-01-23
        相关资源
        最近更新 更多