protected string ReadString( BinaryReader reader, char delimiter ) { StringBuilder sb = new StringBuilder(); char c; // sift through each character until we hit the delimiter while ( ( c = reader.ReadChar() ) != delimiter ) { sb.Append( c ); } // return the accumulated string return sb.ToString(); }