I guess you're asking if there is anyway to jump directly to the third line of the file without reading the first two lines. In general (unless you have an index, as you mentioned) the answer is no. You have to read the first two lines to know how long they are, so the simple solution of reading the file line-by-line and ignoring the first lines is about as good as you can get.
Regarding the end, if your end index is an index from the beginning of the file then you can stop early. But did you mean the 3rd line from the end of the file? In this case you will also have to read all the way to the end of the file to know when to stop.
One special case is if you know that all the lines are the same length. Then you can seek directly to the correct location in the file and start reading from there.