skillup

技術ブログ

Perl

Perlでの動的改行コード読み込みに関して+cp932ネタ

投稿日:2016年12月12日 更新日:

本日はperlにて改行コードを動的に読み込む方法です。

動的な改行コードの判定・読み込み

実務で古いMACで作られたCSVが読み込めないという事態が発生。また当然、win環境でも読み込むために、動的に改行コードを判定してなおす必要が出てきました。

いろいろ悩んだんですが、まず改行コード判定の際には下記プログラムでの読み込みを行いました。

そして実際に改行コードを読み込ませるのは下記のプログラムです。

多分、直すとこあると思うんですが・・・どうなんでしょう。

Mac のExcelで作ったCSVを適切にPerlで読むには?
Perlで改行コードがCRのファイルを読み込む方法

CPANライブラリ
http://search.cpan.org/~makamaka/Text-CSV-1.33/lib/Text/CSV.pm

ShitfJISとcp932について

もう一つ実務でローマ数字のみが文字化けという現象が発生しました。

どうやらcp932ファイルをsjisで読み込むとこのような事象が発生するようです。cp932とShitJISは完全に一緒ではないので注意しましょう。

CP932変換表の問題が顕在化する例

-Perl
-,

執筆者:


  1. […] Perlでの動的改行コード読み込みに関して+cp932ネタ […]

comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

Perlでの配列処理

最近Perlでの開発をやっているのでそこでのメモなどを書きます。 今まであまりやったことがなかったんですけど、やはり文字列や配列関連の処理をどうやるのかでいろいろと迷ったりします。 が、もともとテキス …

no image

Perlの配列、ハッシュ系の処理 (mapを中心に)

昨日書いたgrepに続き、mapについて調べたことを書いてみました。 Contents1 mapとは?2 mapを使った配列処理 基本3 mapを使った配列、ハッシュ処理 ハッシュを含む多次元配列への …

no image

Perl整形ツール Perl Tidy

PHPでコード整形ツールを使いましたが、Perlでも整形ツールがあったのでちょっとメモ。 Perl::Tidyというモジュールです。 公式 http://perltidy.sourceforge.ne …

no image

PerlでのCSV取込+金額のカンマ表示

CSV取込の場合、単純にカンマで区切って配列を取得するだけのロジックを実装すると様々な弊害が起きます。 よく見られるパターンとしては下記のようなケースでしょう。 フィールドの中に、カンマがあった場合、 …

no image

Perlにおけるオブジェクト指向

今回はPerlのオブジェクト指向について。 Javaほどの厳密性はありませんが、Perlでもオブジェクト指向的なプログラミングを行うことは可能です。 今回はPerlのオブジェクト指向をさらっと基本的な …