へたれCGI講座



6:文字コード(基本)編


 さて皆様お久しぶりです。前回の更新からちょっと間が空いてしまいましたが、今までの更 新ペースが異常に早かっただけですのでご了承ください(苦笑。

 今回は前回の予告通り文字コード編です。
ただ、文字コードに関しては、突っ込んでいくとすさまじい量の文体になってしまうので、必 要かと思われる部分のみを取り上げております。もし「ここもうちょっと知りたいなぁ」なんて 意見がございましたら加筆しますので、ご一報ください。

■そもそも文字コードとは?■
 コンピュータ内では実は全て「0」と「1」の二つの数字(2進数)で全ての処理が行われてい ます。しかし、何かを表示する際に2進数のままだと人間はさっぱり理解できませんよね? そこでその2進数を文字化する必要があるわけです。これを「符号化」と言います。
 この「符号化」の方法(種類と言ってもいいかな?)のことを「コード系」(「文字コード」)と
呼びます。

■文字コードの種類■
 まず有名なところで「ASCII(アスキー)コード」があります。
(ふと思ったのですが、FTP転送でのアスキーモードの「アスキー」は、この文字コードのアスキー?(違うかも))
これはアルファベットや記号($とか\とか)など、半角で表す文字コードです。HTMLなどの
ソースを書くときは、このASCIIコードが使われています。 ただ、文字種類の数に制限が
あるため、全角文字(半角カタカナも)が表現できないという特徴があります。
 そこで登場するのが日本語文字コードです。

■日本語文字コード■
 日本語文字コードにはいくつか種類がありますが、現在主流となっている(及び普及
しつつある)のは主に4つです。HTMLを書いたことがある方はわかると思いますが、HTML などは文字コードを指定して表示させています。

主な日本語文字コード
文字コード名 説明
EUC  主にUNIX系(LINUXが含まれます)OSで使われている日本語文字コード
です。Extended Unix Codeの略です。EU(欧州連合)とは全く関係ありま
せん。 (ワタクシ最初勘違いしてヨーロッパで作ったのかなぁとか思ってました(恥))
SHIFT-JIS  主にDOS、Windows系、MacOSで使用されている日本語文字コードです。
1997年にJIS規格に取り込まれたらしいです。 将来的には半角カナが
取り除かれるという意向もあるようです。
JIS  インターネット上の標準的な日本語文字コードです。メールなどはJISの
ようです。 ただJISは厳密にはかなり細分化されています。詳しく知りたい
方はミケネコ研究所さん→こちら←のページをご覧ください。
Unicode  最近普及してきた文字コードです。厳密には日本語文字コードというより
多国語文字コードです。現在、日本のPCで中国などのサイトを見ようと
すると、中国語用フォント(ソフト?)をダウンロードしなければなりませんが、
その手間がなくなるという画期的なものです。
が、実際のところ、全ての言語を網羅するのは難しいようで、まだ完璧とは
言えないのが現状のようです。

 今のところはこの4つ(Unicodeはまだ知らなくてもいいかも…)さえ理解していれば、大丈 夫だと思います。
サイト巡りをしていて文字化けなどが起こるのは、本来はブラウザがこの日本語コードの種 類を自動的に判別するのですが、それが失敗した場合に起こります。
そんな時は 表示→エンコードで文字コードを色々試せば文字化けはほぼ直ります。
(IEの場合)

 で実際CGIではどれを使えばいいの?とお思いでしょうが、今回はここまで(笑。
次回は実際CGIで使うとき、どれをどのように使うかを紹介したいと思います。


BACK NEXT
CGI-Index TOP