2009-06-26 1 views
0

ifステートメント内の 'リーダー'が「式はメソッドではありません」と表示していますが、何が間違っていますか?Visual Basic、ファイルを開く、私のコードで何が問題になっていますか?

おかげ

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)でメソッド名を逃したおかげ

答えて

0

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 
+0

おかげのように、リーダーを宣言していません。 –

0

。この行で

関連する問題