PerlでCSV2YAML変換
2011年3月15日Table of Contents
大量のCSVレコードから、YAML形式のレコードへ変換する必要があったのでやっつけPerlのメモ。
当然ながら、エラー処理等は一切無視
ファイルパス、フィールド番号、フィールドマップは要変更
#!/usr/bin/perl
my $csvfile = '/path/to/csv/***.csv';
# modules
use strict;
use warnings;
use Text::CSV::Simple;
use YAML::Tiny;
# csv用パーサ作成
my $parser = Text::CSV::Simple->new({binary=>1});
# csvパース
$parser->want_fields(0,1,2, ...(カンマ区切り)..., 999);
$parser->field_map(qw/field1 field2 ... (SP区切り) ... fieldX/);
my @csv = $parser->read_file($csvfile);
print YAML::Tiny::Dump(@csv);
exit(0);