in reply to Smart way to read a file vertically?

See DBD::CSV from the DBI database drivers.
Or, if you want to do it yourself, use Txt::CSV_XS or something similar.

Yes, you can do this yourself, but why bother? Someone else has already done that, hence those modules. Or, if you want to use the Excel speadsheets directly, try the Spreadsheet::XLSX, for example.

~Thomas~
confess( "I offer no guarantees on my code." );