int line = 0;
// If we're skipping some data, do it now
if ( starting_position > 0 ) {
long actual = in.skip( starting_position );
// If we weren't able to skip the desired number of bytes, we'll need
// to do a full index because we don't know what line we're at.
if ( actual != starting_position ) {
// If mark is support, we can just reset to the beginning and