hello! I need to use this for loop to extract specific data from a text file. But it gives me an error message:syntax error.I hope you don't mind helping. Thank you for your time and effort.

Below is my codes:

OpenFileDialog1.ShowDialog()
Dim a As String
TextBox2.Text = OpenFileDialog1.FileName
a = TextBox2.Text
Dim objStreamReader As New StreamReader(TextBox2.Text)

for each i as StreamReader
objStreamReader.ReadLine()
TextBox4.Text = (objStreamReader.ReadLine())
Label2.Text = TextBox4.Text.Substring(0, 3)

Next

objStreamReader.Close()

hi randycena,

I am not sure of the purpose of your code as your description is brief and I assumed that you wish to read a text file and extract certain string from the file. If we just take the for loop portion of the code, there maybe some problem. You're defining the streamreader object for every loop you go through which is not so correct. The stremreader object can read a whole stream at one go. You should use the objStreamReader you defined earlier as this instance has been 'tied' to the text file defined in textbox2.text. So instead of using For..Next loop, you should you While..End While and use the EndOfStream property to check if it's end of stream.

While NOT objStreamReader.EndOfStream
'do whatever you want to do
End While

thank you but now i have this error:
'EndOfStream' is not a member of 'System.IO.StreamReader'.

This article has been dead for over six months. Start a new discussion instead.