CSV_XSで行けるんでね?
名簿データが大量に、CSV データ形式で保管されていた。こいつを加工したいのだが、名簿なので人名などに日本語データが入っている。しかも見るからにシステム外字を使ってしまっている。これをうかつに awk などで触ってしまったら、文字化け、データ欠落を引き起こしかねない。慎重に作戦を立てることにした。
まず、安全に加工するために、データを UTF8 に変換することにした。使っている文字集合が、Windows-31J の範囲なら、理論上は文字データの欠落無しに、UTF8 に変換できるはずだ。
UTF8 に変換してしまえば、Unicode 対応のツール、例えば手元の Perl 5.8 などが使える。
Perl で CSV を扱うのに何か便利なライブラリは無いかと探したところ、CPAN で、 CSV_XS というモジュールが見つかった。RFC 4180 対応の CSV データ解析モジュール。
マニュアルを読んでみたところ、機能は十分だ。
ただ、残念なことに、まだ使っていない。使ったら使ったで、きっと予想だにしなかったトラブルが発生したりするのだろうな...。
CPAN がある限り、Perl は手放せないと思った。
まず、安全に加工するために、データを UTF8 に変換することにした。使っている文字集合が、Windows-31J の範囲なら、理論上は文字データの欠落無しに、UTF8 に変換できるはずだ。
UTF8 に変換してしまえば、Unicode 対応のツール、例えば手元の Perl 5.8 などが使える。
Perl で CSV を扱うのに何か便利なライブラリは無いかと探したところ、CPAN で、 CSV_XS というモジュールが見つかった。RFC 4180 対応の CSV データ解析モジュール。
マニュアルを読んでみたところ、機能は十分だ。
ただ、残念なことに、まだ使っていない。使ったら使ったで、きっと予想だにしなかったトラブルが発生したりするのだろうな...。
CPAN がある限り、Perl は手放せないと思った。
この記事へのコメント