Well, more like it works, and does exactly what I need for the moment.
I ended up using the StringReader to read each char 1 at a time, and used Chr(9) to detect the tab char.
Do While (True)
integerRead = charReader.Read()
If (integerRead = -1) Then
characterRead = Convert.ToChar(integerRead)
If (characterRead = Chr(9)) Then