基本的な使い方は他の色々なサイトで解説されているため省略。
CPANページは以下。
Text::CSV
comma-separated values manipulator (using XS or PurePerl)
上記サイトにも書かれていますが、Text::CSVをnewする際に様々なオプションを指定できます。
区切り文字や囲み文字などは指定する機会が多いかもしれません。
それぞれ0x20 (space) から 0x7e (tilde)までの文字が使用できると解説されています。
大抵の文字、記号が使用できますね。
囲み文字はデフォルトではダブルクォート(”)が設定されていますが、
これをシングルクォート(’)などに変更する際には注意が必要です。
quote_charオプションにシングルクォートを指定するのですが、ここを変更しただけではシングルクォート囲いの文字列を正しく取り込むことができません。
escape_charもシングルクォート設定に変更する必要があります。
escape_charの説明中に、escape_charとquote_charは同じ設定でなければならないという内容の記載があります。
quote_char、escape_char両方にシングルクォートを設定すると、シングルクォート囲いの文字列を正しく取り込むことができます。
他の囲み文字でも同様に両方設定します。
中々見落としがちな部分だと思いますので注意が必要です。
コメント