• ベストアンサー

nkfとjcodeの使い方の違いについて

sendmailを使用する場合、nkfで文字コードの制御を行っている場合が 多いようなのですが、なぜjcodeではないのでしょう? 調べてみたのですが、unixなどの専門用語が多発していてよく分かりませんでした(^^; nkfとjcodeのメリットやデメリットについて詳しい方、ご享受下さいませ。

質問者が選んだベストアンサー

  • ベストアンサー
  • alfeim
  • ベストアンサー率58% (114/195)
回答No.1

jcodeは多分jcode.plの事だろうと思いますが、jcode.plは.plの拡張子(最近では.pmのものもあるみたいです)があらわす通りPerlのコードです。 一般にjcode.plそのものを単独で使用する事はなく、さまざまなPerlプログラムの中からライブラリとして利用されます。 それに対してnkfは単独で漢字コードを変換するプログラムですので、コマンドラインからsendmailに日本語(7bit Thruではない)を通す場合に変換に利用されます(実際にはnkfだけではSubjectに日本語を使う事は出来ませんが・・・) メリット、デメリットは nkfの場合、単独で動作可能なプログラムなのでshellから利用するのが容易である。 デメリットは、各種CPUやマシンに適合させるためにソースコードを使い、対象マシン上で再構築する必要がある事。 jcode.plはPerlを利用する場合、popenなどを利用して外部プロセスを利用するより遥かにスマートである、ポータビリティが高い(nkfはソースを持っていってターゲットマシン上でコンパイルしなければ駄目ですが、jcode.plはファイルをそのまま持っていけば動作可能です)事。 デメリットはフルperlコードであるため、速度はnkfに劣る。 こんな感じでしょうか?

kodai_sumio
質問者

お礼

なるほど・・・。分かりやすい解説をしていただいてありがとうございました。jcode.plばかり使ってきたので、nkfに馴染めなくて困っていました。速度を考えるとnkfの方がいいんですね。これからちょっとずつ勉強してみます。本当にアリガトウございました。

関連するQ&A