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での変数、配列、ハッシュに関して ~リファレンスなど~

こちらのブログでプログラミングを教えてるんですけど、プログラミングの基本といえば配列とオブジェクト指向だと思います。 もちろん、これ以外のことも大切ですが、初心者のうちはここを抑えておけばとりあえず何 …

no image

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

Perlの配列やハッシュで便利そうな処理をgrepを中心にいろいろ調べてみました。 Contents1 grepとは?2 grepを使った配列処理 基本3 grepを使った配列処理 ハッシュを含む多次 …

no image

Basic認証のあるページの情報の取得

ひさびさにPHPネタです。 PHPではWEBページを保存するときにfile_get_contents(url)と書いてあげるとHTMLデータを取得できます。 が、Basic認証などのページは当然fal …

no image

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

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

no image

Vagarant+Eclipse(Perl)での作業環境構築

現在の案件でPerlの改修があるんですが、windowsだとモジュールの依存関係でうまくコンパイルできなかったりといろいろとトラブルが起こったんで、今はやりの仮想環境でやることに。 まだ完ぺきではない …