in reply to reading 100 line at a one time

I'm not sure what I/O savings you'll get. Your program will still have to read every single line and do the same amount of disk I/O. If you want to process data one hundred lines at a time...well, you're still processing the same amount of characters no matter what, one at a time.

Second, the read and sysread functions, as you know, use bytes as delimiters. The diamond operator <> reads a line at a time.

Hope this clarifies a little.