What is the best way to have the functionality of the `StreamReader.ReadLine()` method, but with custom (String) delimiters?

I'd like to do something like:

```
String text;
while((text = myStreamReader.ReadUntil("my_delim")) != null)
{
   Console.WriteLine(text);
}

```

I attempted to make my own using `Peek()` and `StringBuilder`, but it's too inefficient. I'm looking for suggestions or possibly an open-source solution.

Thanks.

**Edit**

I should have clarified this earlier...I have seen [this answer](https://stackoverflow.com/questions/6655246/how-to-read-text-file-by-particular-line-separator-character/6655492#6655492), however, I'd prefer not to read the entire file into memory.