一般的に利用されるエンコーディングと、そのエンコーディングで利用できる文字を説明します。
エンコーディングの種類
一般的に利用されるエンコーディングの指定には、以下のものがあります。
エンコーディング名 | 説明 |
---|---|
SJIS | JIS規格に準拠したシフトJISです。 |
EUC-JP | JIS規格に準拠したEUCです。 |
windows-31j | Windows拡張文字を含んだシフトJISです。 |
UTF-8 | データをUnicode形式で送受信します。 |
Shift_JIS | 一般にはSJISの別名ですが、Windows上でJDKの古いバージョンを使う場合はwindows-31jと判断されます。 |
UTF-8の場合は、ブラウザ側で必要に応じて文字コードを変換します。その他のエンコーディングは、サーバ側で文字コード変換が行われます。
エンコーディングを指定する場所
エンコーディングは以下の場所で指定します。
指定する場所 | 説明 |
---|---|
JSP自体のエンコーディング | JSPを保存するときに指定するエンコーディングです。エディタ等で明に指定するか、OSの標準のエンコーディングが使われます。 |
<%@ page>のcontentType指定 | JSPサーバがJSPファイルのエンコーディングを認識するために使用します。 |
<META>のcontent指定 | ブラウザが送受信のエンコーディングを認識するために使用します。 |
web.xmlのuji.defaultEncoding | Apcoordinatorが受信データのエンコーディングを認識するために使用します。 |
エディタ等での指定方法は各エディタに依存します。
<META>での指定はブラウザに依存しますが、windows-31jおよびSJISの場合には、"Shift_JIS"と指定するのが一般的です。
エンコーディングで利用できる文字
通常の英数字やJIS漢字は各エンコーディングで利用可能です。
利用時に注意の必要な文字を以下に示します。
文字 | SJIS | EUC-JP | Windows-31j | UTF-8 | 備考 |
---|---|---|---|---|---|
○ | ○ | ○ | ○ | 半角円記号、半角ティルダは、フォントの指定やOSによって異なる外観となります。 | |
○ | ○ | ○ | △ | UTF-8を指定する場合には、OSによって異なるコードで入力されます。 | |
○ | ○ | △ | △ | windows-31jを指定した場合、またはUTF-8指定でWindows上のブラウザを利用する場合には、標準JISとは異なるコードで入力されます。 | |
マル付き数字、ローマ数字、など(*1) | × | × | △ | ○ | Windows上のブラウザでのみ利用できます。 |
拡張漢字など(*2) | × | × | △ | △ | Windows上のブラウザでのみ利用できます。 |
補助文字 | × | × | × | △ | Unicode仕様においてFFFF(16進数表記)より大きいコードポイントを持つ文字を補助文字と呼びます。日本語の文字については、JIS X 0213:2004 (JIS2004)において、第3水準、第4水準の文字の一部が補助文字となっています。利用するには、ブラウザとその動作OSが補助文字に対応している必要があります。 |
該当する文字の詳細は以下です。
(*1) | |
(*2) |
関連項目