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の環境構築(windows)

先日まではJava案件がメインだったのですが、Perlの案件があり、これに取り組むことに。 で、とりあえずローカルに環境を構築しようと思いましたが、こがすげー大変でした。 PerlってCPANってライ …

no image

Perl整形ツール Perl Tidy

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

no image

Perlの文字コードについて その3

実際のPerlでの文字処理に関しては以前の記事でも書いたように下記の原則を守ればOKです。  原則1 外部から入力された文字列はデコードして内部文字列に変換する  原則2 外部へ出力する文字列はエンコ …

no image

大容量データの取り込みについて

普段プログラムを組むときには可読性や保守性が大事なポイントになりますが、それと同じぐらい速度やメモリ効率なんかも大事です。 今回は少ないメモリでもなんとかできるような工夫をちょっとかいていこうかなと思 …

no image

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

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