IT用語集 › プログラミング › 文字エンコーディング (Character encoding)

文字エンコーディング (Character encoding)

プログラミング Svenska → 更新: 2026-10-21

文字をバイト列に、バイト列を文字に変換する規則。「å」と出るべきところに「Ã¥」と出る、あの現象の元凶でもある。

エンコーディングとは、文字集合の文字とバイト列との対応づけだ。ASCIIは7ビットで128文字を扱った。ISO-8859-1(Latin-1)は256文字まで広げたが、西欧言語をまかなえる程度で、互換性のない文字コードが乱立する結果になった。文字集合の問題を解いたのがUnicode、符号化の問題を解いたのがUTF-8である。

肝心なのは、メモリ上のテキストは決して「ただのテキスト」ではなく、常にバイト列とエンコーディングについての前提だという点だ。前提が間違っていれば文字化け(mojibake)になる。だからエンコーディングはHTTPヘッダー、<meta charset>、データベース接続のそれぞれで、必ず明示する。日本語環境ならShift_JISやEUC-JPの時代を思い出す人も多いだろう。

← 用語集に戻る