in reply to Best practice for reading delimited file
Simple answer! Text::CSV_XS or Text::CSV. Both automatically deal with line endings and have attributes to use TAB as sep-char.