Perl入門ゼミ

テキスト処理、Linuxサーバー管理、Web開発ならPerl
  1. Perl
  2. 標準関数
  3. here

binmode関数 - バイナリモード

ファイルハンドルをバイナリモードに変更するにはbinmode関数を使用します。バイナリモードとはファイル入出力を行うときに改行の自動変換を行わないモードのことです。画像や動画などのバイナリファイルの入出力はバイナリモードで行う必要があります。

binmode $fh;

画像ファイルを読み込むサンプルです。

# 画像ファイルの読込
my $file = 'picture.png';

open my $fh, '<', $file
  or die "Cannot open '$file': $!";

binmode $fh;

my $size = -s $file;

my $read = read($fh, my $buffer, $size, 0);

die "Cannot read '$file' : $!" unless defined $read;

close $fh;
  • Perlとはテキスト処理の記述性とパフォーマンスに優れ、正規表現が言語に組み込まれているプログラミング言語です。
  • Linuxサーバーでのフィルタリングプログラム、複数行の文字列を処理、ファイル内容の検索・置換などが得意
  • Perlはgitopensslなど広く普及したUnix/Linuxミドルウェアの補助ツールとして採用実績あり。後方互換性とポータビリティの高さがひとつの理由と推測。
  • 大量のテキストを扱うWeb開発も得意。ロングテールSEOを意識したWebサイト、アドテクやソーシャルゲームでの50ms以内のJSONの生成など。