File APIs for Java Developers
Manipulate DOC, XLS, PPT, PDF and many others from your application.
The moose likes I/O and Streams and the fly likes Line based access with RandomAccessFile Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login

Win a copy of RabbitMQ in Depth this week in the Open Source forum!
JavaRanch » Java Forums » Java » I/O and Streams
Bookmark "Line based access with RandomAccessFile" Watch "Line based access with RandomAccessFile" New topic

Line based access with RandomAccessFile

Satya Maheshwari
Ranch Hand

Joined: Jan 01, 2007
Posts: 368
Is there some sort of abstraction available over RandomAccessFile that let me jump(seek) to a specified line number in the file.
Any help appreciated!

Thanks and Regards
Andrey Kozhanov
Ranch Hand

Joined: Mar 12, 2010
Posts: 79
I believe you have to write your own class. I would extend RandomAccessFile and implement CharSequence, and then use this class in Pattern and Matcher to find EOL sequence.
Stephan van Hulst

Joined: Sep 20, 2010
Posts: 3777

This isn't very useful, because the point of a RandomAccessFile is to provide, well, random access. If you need to find the number of lines in a file, whether you do this with a Pattern or otherwise, you still end up reading the entire file up to the point you want to jump to.

Simply wrap the file in a Scanner or a BufferedReader or something.
Rob Camick
Ranch Hand

Joined: Jun 13, 2009
Posts: 2334
Its only useful if the size of each line is a fixed length. Then in this case you can randomly read line.
I agree. Here's the link:
subject: Line based access with RandomAccessFile