Extracting logical records from a physical file in the fastest time. 
This is a generic question not specific to any particular language. Java can be chosen as a placeholder. If I have a flat file that has the following structure  
start:this is record 1:end  
start:this is record 2, with more chars than record 1:end  
start:this is record 3, with more chars than record 1 and record 2:end  
....  
start:this is record n, with more chars than record n-1 ... 1:end  
How can I efficiently process this physical file where every logical record is demarcated by a 'start' and 'end'. I'm not looking for the fastest way to do this ?
Extracting logical records from a physical file in the fastest time. 
===

This is a generic question not specific to any particular language. Java can be chosen as a placeholder. If I have a flat file that has the following structure  
start:this is record 1:end  
start:this is record 2, with more chars than record 1:end  
start:this is record 3, with more chars than record 1 and record 2:end  
....  
start:this is record n, with more chars than record n-1 ... 1:end  
How can I efficiently process this physical file where every logical record is demarcated by a 'start' and 'end'. I'm not looking for the fastest way to do this ?