Я начинаю использовать Perl для своих скриптов. Прямо сейчас у меня есть хранилище хэш-таблицы для переменной ($XML
), но я не знаю, как ее преобразовать в файл CSV. Вот содержание хеш-таблицы.Как преобразовать хеш-таблицу в файл CSV на Perl?
$VAR1 = {
'result' => {
'item' => [
{
'bootbox8_id' => '222333',
'site_id' => '144',
'key' => '0',
'os_version' => '3.1',
'switch_name' => 'switch1.name.com',
'type_id' => '109',
'mac' => {
'item' => {
'content' => '00:B0:92:2C:CB:9D',
'key' => '0'
}
},
'property' => 'SALES',
'console' => 'console.name.com',
'name' => 'india2.name.com',
'bootbox8' => 'console.name.com',
'os_name' => 'LINUX',
'site' => 'india',
'manufacturer' => 'XXX',
'model' => 'XXX-4',
'id' => '1083376',
},
{
'bootbox2_id' => '222333',
'site_id' => '144',
'key' => '1',
'os_version' => '3.1',
'switch_name' => '',
'type_id' => '109',
'mac' => {
'item' => {
'content' => '00:B0:98:1B:C6:E2',
'key' => '0'
}
},
'property' => 'SALES',
'console' => 'console.name.com',
'name' => 'india1.name.com',
'bootbox2' => 'console.name.com',
'os_name' => 'LINUX',
'site' => 'india',
'manufacturer' => 'XXX',
'model' => 'XXX-4',
'id' => '1083377',
}
]
},
'meta' => {
'total_pages' => '1',
'current_page' => '1',
'per_page' => '10',
'total' => '2'
}
};
И я хотел бы собрать некоторые поля в хеш-таблице и преобразовать их в CSV-файл, как показано ниже.
india2.name.com,SALES,india,LINUX,XXX-4
india1.name.com,SALES,india,LINUX,XXX-5
Не могли бы вы предоставить образец детали, чтобы я мог узнать об этом?
Замечу - если это в XML в первую очередь, могут быть лучшие способы сериализации данных при анализе XML. – Sobrique
Это может быть XML :: Simple output @Sobrique. – simbabque
Да, возможно. Это плохая новость, учитывая, что XML прикладывается к массивам, когда в принципе, XML не поддерживает массивы. Но такие вещи, как 'XML :: Twig', позволяют устанавливать обработчики элементов, которые будут« делать вещи », чтобы транспонировать ваш XML в вывод CSV-стиля. – Sobrique