Hatena::Groupfragments

うまい棒の断片

2009-04-11

[]Text::CSVCSV処理 13:13 はてなブックマーク - Text::CSVでCSV処理 - うまい棒の断片

単純なCSVなら

split ',', $_;

でいいけど、クォートしてる場合などは困ってしまうっていう時のお話。

Text::CSV

parseメソッドが成功したらfieldsメソッドでデータ取得。

use Text::CSV;
my $csv = Text::CSV->new();
while (my $line = <>) {
  if ($csv->parse($line)) {
    my @columns = $csv->fields();
    ## ほげほげ
  }
  else {
    my $err = $csv->error_input;
    warn "csv parse() failed on argment: $err\n";
  }
}