in reply to reading the file using the line number

Tie::File seems to be the best solution proposed so far, but bear in mind that it doesn't magically know where line 6000 starts. If you open a file and then ask for line 6000, it will (internally) read from the beginning of file and count to line 6000. However, it does cache line offsets, so if you subsequently ask for line 6050, it will remember the byte offset for line 6000, jump straight to it, and then start counting lines until it reaches line 6050.

If you're interested in learning more, have a look at the line number caching logic in File.pm (in the Tie::File package). It's groovy!

  • Comment on Re: reading the file using the line number