Perl | japerl.bat | jacode.pl | Strict-Perl | SjisTk | DBD-mysqlPPrawSjis | Sjis.pm | EUCJP.pm | UTF2.pm | Char.pm
require 'jacode.pl';
jacode.pl は jcode.pl の後継を目的として作成されたPerlライブラリです。 入出力するファイルの符号化方式を変換するときに利用します。
jacode.plはこんなときに便利です
インストール方法
以下のファイルを @INC に含まれるディレクトリ、例えば C:\Perl\site\lib にコピーするとインストール完了です。
使い方
スクリプト先頭に以下の記述をします。
require 'jacode.pl';
サブルーチン
jacode:: と間違えないように注意してください。 正しくは jcode:: です。 これは jcode.pl に対するオマージュです。 jcode::getcode(\$line) jcode::convert(\$line, $ocode [, $icode [, $option]]) jcode::xxx2yyy(\$line [, $option]) &{$jcode::convf{'xxx', 'yyy'}}(\$line) jcode::to($ocode, $line [, $icode [, $option]]) jcode::jis($line [, $icode [, $option]]) jcode::euc($line [, $icode [, $option]]) jcode::sjis($line [, $icode [, $option]]) jcode::utf8($line [, $icode [, $option]]) jcode::jis_inout($in, $out) jcode::get_inout($string) jcode::cache() jcode::nocache() jcode::flushcache() jcode::flush() jcode::h2z_xxx(\$line) jcode::z2h_xxx(\$line) &{$jcode::z2hf{'xxx'}}(\$line) &{$jcode::h2zf{'xxx'}}(\$line) jcode::tr(\$line, $from, $to [, $option]) jcode::trans($line, $from, $to [, $option]) jcode::init()
このライブラリの特徴
このライブラリの利点
jacode.plの説明
この jacode.pl は Perl4上でUTF-8を扱えるようにjcode.plを改造したものです。 実装を継承することにより機能(とインタフェース!)を継承するこの方法は、過去 においても、現在においても有効なので、おそらく将来においても有効であり続ける でしょう。 jacode.pl を @INC に設定されているディレクトリ、例えば C:\Perl\site\lib に格納するとインストール完了です。"require 'jcode.pl';" の代わりに "require 'jacode.pl';" とすることで、今までの jcode.pl の機能に加えて UTF-8 の変換ができるようになります。 UTF-8 を指定する場合は 'utf8' というように書きます。また 'jis','sjis', 'euc','utf8' のいずれでもないコードを指定して &jcode'convert を呼び出し たとき、Encode モジュールを利用できる環境であれば、Encode::from_to によっ てその変換を行います(これはまさしく小飼弾さんの Encode モジュール様さまです。 ときどき Encode モジュールの悪口を言うひとを見かけますが、そういうひとは許 しませんっ!)。 一点、気をつける必要があるのは文字コードの自動判定を行う &jcode'getcode です。UTF-8も半角カナも扱うため判定の精度は従来の jcode.pl よりも低く なってしまいます。なので文字コード変換をする場合は変換前・変換後ともに指定 すべきだと思われます。 また、WWW 上には、'jacode.pl' を 'jcode.pl' にリネームして、呼出し元の プログラムを書換えずにそのまま利用する方法が紹介されていますが、'jcode.pl' にリネームしたファイルはくれぐれも再配布されないよう、ご注意願います。 再配布すると歌代和正さんの jcode.pl のライセンスにあなたが違反することに なります。 このソフトウェアはPerl4からPerl5.16まで幅広く使えます。 そのためこれまでのスクリプトやノウハウを活かすことができます。その一方で、 Encodeモジュールの恩恵を受けることができるため、これからもずっと安泰です。 内部的に Encode モジュールが利用される場合もこのソフトウェアのインタフェー スは jcode.pl のままなので忌々しい UTF8 フラグに煩わされることもありません。 これから始める人にも、今までjcode.plを使っていた人にもおすすめです。