Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
困ったときのツール集 - インターネットメールの注意点
[go: Go Back, main page]

[付録] 困ったときのツール集


メールでのやり取りに限らず、データのやり取りは苦労が多いでしょう。
ここでは、文字コード変換、バイナリ→テキスト変換圧縮/伸長ソフト、アーカイバ等を紹介します。

括弧()内は、一般的に使われている拡張子を示しますが、別にインターネット関連規格できっちり決まっているものではありません。


[*] 色々テキストファイル集 Ver.3.3

様々な文字コードテキストファイルのサンプルです。
JISEUC-JPShift_JISマックバイナリ付き等がまとまっています。 行の区切りが異なるサンプルもあります。
一番上のビットの落ちたサンプルもあります。手持ちの色々なソフトで表示して、果てしない文字化けの旅に出ましょう。


[*] 文字コード関連のツール

nkfは、ISO-2022-JPEUC-JPShift_JISの日本語文字コードを相互に変換するツールです。
ESCの落ちたJISも修復出来ます。オリジナルはC言語のソースで公開されており、ほぼ全てのCコンパイラでコンパイル可能です。
最近はUnicodeへの対応も進められています。


[*] バイナリを扱うツール

バイナリファイルを2進数や16進数で表示したり編集するツールがあります。バイナリビューア、バイナリダンプ、16進エディタとか、色々な呼ばれ方をします。
文字化けの原因が判らないとき、これらのツールで徹底的に調べると判るかもしれません。

UNIXの場合、odというコマンドが有名です。
他のコンピュータでも色々なツールがあるようです。


[*] uuencode / uudecode (.uu or .uue)

UNIXで一般的に使われているツールです。
uuencodeでバイナリ-テキスト変換し、uudecodeで元に戻します。簡単な説明を[10.2.1]に書きました。


[*] BinHex (.hqx)

MacOSで使われているバイナリ-テキスト変換ツールです。
簡単な説明を[10.2.2]に書きました。MacOS以外で使うときはデータフォークやリソースフォークの扱いに注意してください。


[*] "B" encoding / "Q" encoding

RFC2822で決められたヘッダはASCIIのみを扱い、それ以外のときはMIMEの決まりを使う事になっています。

ISO-2022-JPの場合は"B" encodingを使うのが一般的です。説明は[8.3]を見てください。
latin1等の場合は"Q" encodingを使うのが一般的です。説明は[11.5.4]を見てください。

これらをもとに戻すには、上で紹介しているnkfが使えます。


[*] RFC2231によるMIMEパラメータ値拡張

MIMEでは、ヘッダのパラメータに"B" encodingを使うのも"Q" encodingを使うのも禁止です。そこでRFC2231という文書で、パラメータ専用のエンコーディング法が考えられました。
簡単な説明を[8.3.3]に書きました。


[*] base64 / quoted-printable

MIMEの決まりでは、本文中の8ビットを7ビットに変換する方法が2種類あります。

base64は主にバイナリデータに使うものです。説明は[10.2.3]を見てください。
quoted-printableは主にlatin1等に使うものです。説明は[11.6.4]を見てください。

メールソフトにbase64やquoted-printableの機能が取り込まれている場合もありますが、ここで紹介するツールは手動で扱えます。Mpack/munpackは多くのコンピュータで動き、共通のソースも公開されています。


[*] compress / uncompress (.Z)

UNIXで一般的な圧縮ツールです。
一つのデータしか圧縮出来ないので、tarと組み合わせることがあります。この場合拡張子は.tar.ZになりますがDOS等では扱えないので.tazとすることがあります。
compressで作った.Zファイルはgzipでも伸長できるので、gzipを入手してください。


[*] gzip / gunzip (.gz or .z)

UNIXでよく使われる圧縮ツールです。
昔は拡張子に小文字の.zを用いていましたが、compressの大文字の.Zと紛らわしいので、現在は.gzが勧められています。一つのデータしか圧縮出来ないので、tarと組み合わせることがあります。この場合拡張子は.tar.gzになりますがDOS等では扱えないので.tgzとすることがあります。
compressで作った.Zファイルはgzipでも伸長 出来ます。なお、zipとgzipは別なので注意してください。


[*] bzip2 / bunzip2 (.bz2)

最近、徐々に使われはじめている圧縮ツールです。
compressやgzipと同じように、一つのデータしか圧縮出来ないので、tarと組み合わせることが多いようです。一つのデータしか圧縮出来ないので、tarと組み合わせることがあります。この場合拡張子は.tar.bz2になりますがDOS等では扱えないので.tb2とか.tbzにしているのをみかけます。


[*] tar (.tar)

UNIXで一般的なアーカイバです。
複数のファイルを一つにまとめるだけであり、圧縮はしません。圧縮したい時はcompressgzipbzip2と組み合わせるケースが多いです。
GNU tarというツールの場合、compressやgzipやbzip2を呼び出して、アーカイブと圧縮を両方行なう事が出来ます。


[*] LHA (.lzh or .lha)

日本国内でよく使われているアーカイバであり、同時に圧縮も出来ます。
同じLHAでも実は色々な形式があって、ヘッダ形式は1か2、圧縮形式はlh5が無難なようです。lh0は非圧縮です。
日本国外では.lhaという拡張子を使うことがありますが、開発者は.lzhを推奨しています。


[*] zip / unzip (.zip)

世界中でよく使われているアーカイバであり、同時に圧縮も出来ます。元々はDOS用のシェアウェアがオリジナルですが、Info-ZIP等のフリーの互換ソフトが多数あるので安心です。とても沢山のコンピュータをサポートしているし、ソースも公開されています。
なお、gzipとは別の形式なので注意しましょう。


[*] StuffIt (.sit or .sitx)

MacOSで一般的なアーカイバであり、同時に圧縮も出来ます。
MacOS以外と送受信するときは、データフォークやリソースフォークの扱いに注意してください。
1.5形式、3.0形式、5.0形式等がありますが拡張子を付けるときはどれも.sitを使います。後から出来たSITX形式は.sitxを使います。
あちこちのftpサイトに置かれているmacutilは、古い形式のstuffitしか展開出来ないようです。


[*] Compact Pro (.cpt)

MacOSで使われるアーカイバであり、同時に圧縮も出来ます。
MacOS以外と送受信するときは、データフォークやリソースフォークの扱いに注意してください。


[*] MacBinary (.bin)

MacOSのファイル形式は独自性が強いので、そのままネットワーク上で扱うのは難しいのです。
そこで、マックバイナリという方式に変換する場合があります。これは先頭に128バイトの情報が付き、その後にデータフォークが続きます。必要な場合には更にリソースフォークが続き、更にコメントが続きます。
MacOS上では自動的に扱われる場合が多く、あまり気にならないかもしれませんが、他のマシンの場合はツールが必要でしょう。

MacBinaryにはI、II、IIIの3つのバージョンがあります。


[*] URL encoding

WebページのFORMを使って送信されたメール等で使われている方式です。
特に正式な名称は付いていないようですが、URLエンコーディング、URL形式、FORM形式等と呼ばれるようです。
簡単な説明を[11.6.10]に書きました。


インターネットメールの注意点 - 表紙へ戻る