more quickly than you can read the file and do nothing
That does not have to be more quickly, just comparable time. 20%-30% is already significant.
Also, concept that whole application run time (from start to finish) is significant is a bit wrong.
Often startup time (when actually file is read) is significant, and after startup application is actually doing something useful (and can be blocked by disk/network IO or waiting for user action) till system reboot
Do you want me paste code where split() taking more than 20% of time when I just read file to memory and skip some/most of records ?