| 
 | 
 | 
 | 
サポートされるロケールのセットは、Java 2 プラットフォームの実装により、また機能範囲により異なります。
ここでは、Sun の J2SE Development Kit 5.0 (JDK) と、J2SE Runtime Environment 5.0 (JRE) におけるロケールのサポートについて、次の内容を説明します。
Sun の J2SE Runtime Environment 5.0 の Windows 版は、完全な国際化版またはヨーロッパ言語版としてインストールすることができます。JRE のインストールプログラムは、ホストオペレーティングシステムがヨーロッパ言語だけをサポートしていることを識別すると、デフォルトでヨーロッパ言語版をインストールします。インストールプログラムが他の言語の必要性を識別した場合、またはカスタマイズされたインストールでユーザがヨーロッパ言語以外のサポートを要求した場合は、完全な国際化版がインストールされます。Solaris および Linux 版の JRE と、すべてのプラットフォーム版の JDK では、完全な国際化版が常にインストールされます。
java.util および java.text パッケージでのロケールに依存する動作のサポートは、ほぼ完全にプラットフォームから独立しています。そのため、すべてのロケールは、ホストのオペレーティングシステムとその地域には依存せず、同じ方法で同時にサポートされます。プラットフォームに依存している唯一の機能は、ホストオペレーティングシステムのロケールとタイムゾーンに基づいた、最初のデフォルトのロケールおよび最初のデフォルトのタイムゾーンの設定です。
Sun の J2SE Development Kit 5.0 と、国際化版の J2SE Runtime Environment 5.0 は、下記のロケールをすべてサポートしています。ヨーロッパ言語版の J2SE Runtime Environment 5.0 は、次の言語に対応するすべてのロケールをサポートしています。アルバニア語、ベロルシア語、ブルガリア語、カタロニア語、クロアチア語、チェコ語、デンマーク語、オランダ語、英語、エストニア語、フィンランド語、フランス語、ドイツ語、ギリシャ語、ハンガリー語、アイスランド語、イタリア語、ラトビア語、リトアニア語、マケドニア語、ノルウェー語、ポーランド語、ポルトガル語、ルーマニア語、ロシア語、スロバキア語、スロベニア語、スペイン語、スウェーデン語、トルコ語、ウクライナ語です。
| 言語 | 国 | ロケール ID | 
|---|---|---|
| アラビア語 | サウジアラビア | ar_SA | 
| 中国語 (簡体字) | 中国 | zh_CN | 
| 中国語 (繁体字) | 台湾 | zh_TW | 
| オランダ語 | オランダ | nl_NL | 
| 英語 | オーストラリア | en_AU | 
| 英語 | カナダ | en_CA | 
| 英語 | 英国 | en_GB | 
| 英語 | 米国 | en_US | 
| フランス語 | カナダ | fr_CA | 
| フランス語 | フランス | fr_FR | 
| ドイツ語 | ドイツ | de_DE | 
| ヘブライ語 | イスラエル | iw_IL | 
| ヒンディー語 | インド | hi_IN | 
| イタリア語 | イタリア | it_IT | 
| 日本語 | 日本 | ja_JP | 
| 韓国語 | 韓国 | ko_KR | 
| ポルトガル語 | ブラジル | pt_BR | 
| スペイン語 | スペイン | es_ES | 
| スウェーデン語 | スウェーデン | sv_SE | 
| タイ語 (西洋数字) | タイ | th_TH | 
| タイ語 (タイ語数字) | タイ | th_TH_TH | 
| 言語 | 国 | ロケール ID | 
|---|---|---|
| アルバニア語 | アルバニア | sq_AL | 
| アラビア語 | アルジェリア | ar_DZ | 
| アラビア語 | バーレーン | ar_BH | 
| アラビア語 | エジプト | ar_EG | 
| アラビア語 | イラク | ar_IQ | 
| アラビア語 | ヨルダン | ar_JO | 
| アラビア語 | クウェート | ar_KW | 
| アラビア語 | レバノン | ar_LB | 
| アラビア語 | リビア | ar_LY | 
| アラビア語 | モロッコ | ar_MA | 
| アラビア語 | オマーン | ar_OM | 
| アラビア語 | カタール | ar_QA | 
| アラビア語 | スーダン | ar_SD | 
| アラビア語 | シリア | ar_SY | 
| アラビア語 | チュニジア | ar_TN | 
| アラビア語 | アラブ首長国連邦 | ar_AE | 
| アラビア語 | イエメン | ar_YE | 
| ベロルシア語 | ベロルシア | be_BY | 
| ブルガリア語 | ブルガリア | bg_BG | 
| カタロニア語 | スペイン | ca_ES | 
| 中国語 | 香港 | zh_HK | 
| クロアチア語 | クロアチア | hr_HR | 
| チェコ語 | チェコ共和国 | cs_CZ | 
| デンマーク語 | デンマーク | da_DK | 
| オランダ語 | ベルギー | nl_BE | 
| 英語 | インド | en_IN | 
| 英語 | アイルランド | en_IE | 
| 英語 | ニュージーランド | en_NZ | 
| 英語 | 南アフリカ | en_ZA | 
| エストニア語 | エストニア | et_EE | 
| フィンランド語 | フィンランド | fi_FI | 
| フランス語 | ベルギー | fr_BE | 
| フランス語 | ルクセンブルク | fr_LU | 
| フランス語 | スイス | fr_CH | 
| ドイツ語 | オーストリア | de_AT | 
| ドイツ語 | ルクセンブルク | de_LU | 
| ドイツ語 | スイス | de_CH | 
| ギリシャ語 | ギリシャ | el_GR | 
| ハンガリー語 | ハンガリー | hu_HU | 
| アイスランド語 | アイスランド | is_IS | 
| イタリア語 | スイス | it_CH | 
| ラトビア語 | ラトビア | lv_LV | 
| リトアニア語 | リトアニア | lt_LT | 
| マケドニア語 | マケドニア | mk_MK | 
| ノルウェー語 (ボークモール) | ノルウェー | no_NO | 
| ノルウェー語 (ニーノスク) | ノルウェー | no_NO_NY | 
| ポーランド語 | ポーランド | pl_PL | 
| ポルトガル語 | ポルトガル | pt_PT | 
| ルーマニア語 | ルーマニア | ro_RO | 
| ロシア語 | ロシア | ru_RU | 
| スロバキア語 | スロバキア | sk_SK | 
| スロベニア語 | スロベニア | sl_SI | 
| スペイン語 | アルゼンチン | es_AR | 
| スペイン語 | ボリビア | es_BO | 
| スペイン語 | チリ | es_CL | 
| スペイン語 | コロンビア | es_CO | 
| スペイン語 | コスタリカ | es_CR | 
| スペイン語 | ドミニカ共和国 | es_DO | 
| スペイン語 | エクアドル | es_EC | 
| スペイン語 | エルサルバドル | es_SV | 
| スペイン語 | グアテマラ | es_GT | 
| スペイン語 | ホンジュラス | es_HN | 
| スペイン語 | メキシコ | es_MX | 
| スペイン語 | ニカラグア | es_NI | 
| スペイン語 | パナマ | es_PA | 
| スペイン語 | パラグアイ | es_PY | 
| スペイン語 | ペルー | es_PE | 
| スペイン語 | プエルトリコ | es_PR | 
| スペイン語 | ウルグアイ | es_UY | 
| スペイン語 | ベネズエラ | es_VE | 
| トルコ語 | トルコ | tr_TR | 
| ウクライナ語 | ウクライナ | uk_UA | 
| ベトナム語 | ベトナム | vi_VN | 
Java Foundation Classes (AWT、Swing、2D、Input Method Framework、ドラッグ&ドロップ) の場合は、通常、ロケールは書記法によってのみ特徴付けられ、国や言語による特別な違いはありません。JFC 内の書記法のサポートは、ホストオペレーティングシステムにある程度依存しており、複数言語の同時使用は、常に完全にサポートされるとは限りません。
ここでは、ある書記法に対して、JFC によるすべての機能が次の状況で適切に動作する場合に、その書記法が JFC でサポートされていると見なします。
Sun の J2SE Development Kit 5.0 と、国際化版の J2SE Runtime Environment 5.0 は、下記の書記法をすべてサポートしています。ヨーロッパ言語版の J2SE Runtime Environment 5.0 は、キリル、ギリシャ語、およびラテンの書記法だけをサポートしています。ピア AWT コンポーネントでは、書記法のサブセットのみサポートされます。表の右端の列を参照してください。
機能のそれぞれの範囲については、後の各項で詳しく説明します。
| 書記法 | 言語 | Windows エンコーディング | Solaris エンコーディング | Linux エンコーディング | ピア AWT コンポーネント | 
|---|---|---|---|---|---|
| アラビア語 | アラビア語 | 1256 | 8859-6 | UTF-8(4) | 非サポート | 
| 中国語 (簡体字) | 中国語 | 936、 | gb2312、 | サポート | |
| 中国語 (繁体字) | 中国語 | 950、 | cns11643、 | Big5(2)(3)(4)(5)、 | サポート | 
| デーバナーガリー | ヒンディー語 | UTF-8 | UTF-8 | 非サポート | 非サポート | 
| ヘブライ語 | ヘブライ語 | 1255 | 8859-8 | UTF-8(4) | 非サポート | 
| 日本語 | 日本語 | 932 | eucJP(1)、 | サポート | |
| 韓国語 | 韓国語 | 949 | 5601、 | サポート | |
| ラテン - 西欧語派サブセット | 英語、フランス語、ドイツ語、イタリア語、スペイン語、スウェーデン語など | 1252 | 8859-1、 | サポート | |
| タイ語 | タイ語 | 874 | TIS620.2533、 | 非サポート | 非サポート | 
| 書記法 | 言語 | Windows コードページ | Solaris エンコーディング | Linux エンコーディング | ピア AWT コンポーネント | 
|---|---|---|---|---|---|
| 中国語 (簡体字) | 中国語 | (上記参照) | (上記参照) | サポート | |
| 中国語 (繁体字) | 中国語 | (上記参照) | (上記参照) | サポート | |
| キリル | ベロルシア語、ロシア語など | 1251 | 8859-5、 | 非サポート | サポート | 
| ギリシャ語 | ギリシャ語 | 1253 | 8859-7 | 非サポート | サポート | 
| 日本語 | 日本語 | (上記参照) | (上記参照) | サポート | |
| 韓国語 | 韓国語 | (上記参照) | (上記参照) | サポート | |
| ラテン - バルト語派のサブセット | ラトビア語、リトアニア語 | 1257 | 8859-13 | 非サポート | サポート | 
| ラテン - 中欧語派サブセット | チェコ語、ハンガリー語、ポーランド語など | 1250 | 8859-2 | 非サポート | サポート | 
| ラテン - トルコ語派サブセット | トルコ語など | 1254 | 8859-9 | 非サポート | サポート | 
| ラテン - 西欧語派サブセット | 英語、フランス語、ドイツ語、イタリア語、スペイン語、スウェーデン語など | (上記参照) | (上記参照) | サポート | 
テキスト入力に対するサポートは、キーボード配列の解釈と、インプットメソッドを使用したテキスト変換の、2 つの部分から構成されます。Java 2 プラットフォームでは、キーボード配列の解釈は、ホストオペレーティングシステムに全面的に依存しています。インプットメソッドを使用したテキスト変換については、Java 2 プラットフォームでは、Java プログラミング言語で開発されたインプットメソッドのほかに、ホストオペレーティングシステムのインプットメソッドマネージャを使用した、ネイティブインプットメソッドもサポートされます。
Java プログラミング言語により実装されたインプットメソッドによるロケールのサポートは、インストールされているインプットメソッドのセットにのみ依存し、ホストオペレーティングシステムとその地域対応には依存しません。ただし、Java プログラミング言語により実装されたインプットメソッドをピアコンポーネントで使用する場合のサポートは、以下のように、その実装方法に依存します。
キーボード配列とネイティブインプットメソッドのサポートは、プラットフォームによって異なります。
Windows 98 および Me では、JRE は、すべてのキーボード配列と、特定地域対応版のホストオペレーティングシステムにインストール可能な、IMM ベースのインプットメソッドの使用をサポートします。
Windows 2000、XP、および 2003 では、JRE は、すべてのキーボード配列と IMM ベースのインプットメソッドの使用をサポートします。
グローバル IME はサポートされません。
Java プログラミング言語に実装されたインプットメソッドは、Windows のすべてのバージョンのすべてのコンポーネントでサポートされます。
JRE は、すべてのキーボード配列と、特定の Solaris または Linux ロケールで使用可能なインプットメソッドの使用をサポートします。
Java プログラミング言語に実装されたインプットメソッドは、Swing テキストコンポーネントなどの軽量コンポーネントでサポートされますが、AWT テキストコンポーネントなどのピアコンポーネントではサポートされません。
アプリケーションには、フォントを選択する 2 つのオプションがあります。
Font.createFont メソッドでインスタンスを生成する)
論理フォント名を使用する場合は、少なくとも、ホストのロケールの書記法と、ラテン書記法の西欧語派サブセットによるテキストがサポートされます。
物理フォントを使用する場合は、単純書記法と複雑書記法を区別する必要があります。単純書記法では文字とグリフが 1 対 1 で対応し、各グリフはベースライン上に左から右へと連続して配置されています。複雑書記法では、同じ文字でも文脈によって異なるグリフが使用されたり、合字が使用されたり、右から左へと書かれる場合があります。また、行のレイアウト中に再配置されたり、結合記号などにより、グリフの配置に別の規則が適用されることもあります。
2D のテキストレンダリングシステムでは、上の表に一覧表示されている単純書記法と複雑書記法のどのような組み合わせでもサポートされます。これらの制限内では、サポートされる書記法の範囲はフォントによって決まります。1 つの TrueType フォントで、Unicode 全体に対応するグリフと、Unicode ベースの文字からグリフへの 1 つのマッピング情報を提供できます。このようなフォントによって、2D ではすべての単純書記法のほか、複雑書記法もサポートできます。その他の複雑書記法はサポートされません。
論理フォント名を使用する場合は、少なくとも、ホストオペレーティングシステムのロケールの書記法によるテキストがサポートされます。
ピアコンポーネントでは、物理フォントはサポートされません。
印刷 API には、次の 3 つがあります。
AWT および 2D の印刷 API を使用したテキストレンダリングは、画面上のテキストレンダリングと同等の機能です。プラグイン機能サービスの印刷 API を使用したテキストレンダリングは、使用する印刷サービスによって異なります。JRE により提供されるサービスは、画面上のテキストレンダリングと同等の機能です。
Windows 98 および Me の場合、ホストオペレーティングシステムの地域対応の書記法によるテキストは、アプリケーション間で転送できます。
Windows 2000、XP、および 2003 の場合、任意の Unicode テキストをアプリケーション間で転送できます。
Solaris および Linux の場合、ホストオペレーティングシステムのロケールの文字エンコーディングによるテキストをアプリケーション間で転送できます。
ホストオペレーティングシステムから独立した任意の Unicode テキストを転送する必要のあるアプリケーションでは、直列化を使用してテキストを転送します。それには、DataFlavor.stringFlavor フレーバのみをサポートする Transferable を作成します。このフレーバは、String の直列化表現を表します。転送先でも stringFlavor がサポートされていることを確認してください。転送時に、AWT は転送元で String を直列化し、転送先で直列化を解除します。この動作はネイティブプラットフォームのテキスト転送よりもかなり低速ですが、ネイティブの転送が利用できない場合に有効です。
J2SE Runtime Environment 5.0 で提供されるユーザインタフェース要素には、Swing ダイアログや、実行環境が標準出力ストリームと標準エラーストリームに書き出すメッセージのほか、JRE に付属のツールから生成されるメッセージも含まれます。ユーザインタフェース要素は次の言語に地域対応されます。
| 言語 | ロケール ID | 
|---|---|
| 中国語 (簡体字) | zh_CN | 
| 中国語 (繁体字) | zh_TW | 
| 英語 | en | 
| フランス語 | fr | 
| ドイツ語 | de | 
| イタリア語 | it | 
| 日本語 | ja | 
| 韓国語 | ko | 
| スペイン語 | es | 
| スウェーデン語 | sv | 
J2SE Development Kit 5.0 で提供されるユーザインタフェース要素には、JRE で提供される要素に加えて、JDK でのみ提供されるツールから生成されるメッセージも含まれます。追加のユーザインタフェース要素は、以下の言語に地域対応されます。
| 言語 | ロケール ID | 
|---|---|
| 英語 | en | 
| 日本語 | ja | 
| Copyright © 2004 Sun Microsystems, Inc. All Rights Reserved. | 
 |