У меня есть скрипт Perl, который читает файл CSV, изменяет имена столбцов оригинала, добавляет новые (выходные имена столбцов CSV хранятся в массиве header_line), добавляет новые значения полей для каждой прочитанной строки и затем записывает новый файл CSV.
Благодаря комментарию @harleypig к моему последнему вопросу я бы хотел использовать:
$csv_i->column_names( @header_line);
$row = $csv_i->getline_hr($fh_i)
потому что это позволяет мне легко получать доступ к полям строк, используя значимые имена, а не магические числа. Например:
$row->{ 'name' } = get_fullname($row->{ 'name' });
Единственная проблема сейчас в том, как лучше написать строку? Ранее я использовал:
$csv_o->print( $fh_o, $row );
Но это не удалось, потому что он ожидает массив ref. Как выписать хэш-ссылку, используя объект csv_o?