Java

サポートするロケール

英語版

サポートされるロケールセットは機能領域によって異なり、さらに Java 2 プラットフォームの実装によっても異なります。

このページでは、以下の機能領域に関して Sun の Java 2 Software Development Kit, Standard Edition, v. 1.3.1 (J2SDK) および Java 2 Runtime Environment, Standard Edition, v. 1.3.1 (J2RE) でサポートするロケールについて説明します。

  1. java.util および java.text 機能で利用可能なロケール
  2. Java Foundation Classes で利用可能な書記体系
    1. 概要
    2. テキスト入力
    3. テキスト描画
    4. コンポーネントの方向
    5. ドラッグ&ドロップ
  3. ユーザインタフェースの翻訳


1. java.util および java.text 機能で利用可能なロケール

java.util および java.text パッケージにおける、ロケール動作のサポートは、ほぼ完全にプラットフォームに依存しません。そのためすべてのロケールは、同時に同じ方法でサポートされ、ホストオペレーティングシステムおよびその各国語対応版に依存しません。プラットフォームに依存する機能は、ホストのオペレーティングシステムのロケールとタイムゾーンに基づく、初期デフォルトロケールと初期デフォルトタイムゾーンだけです。

Sun の Java 2 Software Development Kit, Standard Edition, v. 1.3.1 および国際化バージョンの Java 2 Runtime Environment, Standard Edition, v. 1.3.1 は、以下に示すすべてのロケールをサポートします。米国語版の Java 2 Runtime Environment, Standard Edition, v. 1.3.1 は、英語および米国語ロケールのみをサポートします。

ID の末尾が文字列「EURO」のロケールは、ユーロ通貨がサポートされるロケールです。

完全にサポートされるロケール

言語

ロケール ID

アラビア語

サウジアラビア

ar_SA

中国語 (簡体字)

中国

zh_CN

中国語 (繁体字)

台湾

zh_TW

英語

米国

en_US

フランス語

フランス

fr_FR

フランス語

フランス

fr_FR_EURO

ドイツ語

ドイツ

de_DE

ドイツ語

ドイツ

de_DE_EURO

ヘブライ語

イスラエル

iw_IL

イタリア語

イタリア

it_IT

イタリア語

イタリア

it_IT_EURO

日本語

日本

ja_JP

韓国語

韓国

ko_KR

スペイン語

スペイン

es_ES

スペイン語

スペイン

es_ES_EURO

スウェーデン語

スウェーデン

sv_SE

提供されているがテストされていないロケール

言語

ロケール 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

ブルガリア語

ブルガリア

bg_BG

ベラルーシ語

ベラルーシ

be_BY

カタロニア語

スペイン

ca_ES

カタロニア語

スペイン

ca_ES_EURO

中国語

香港

zh_HK

クロアチア語

クロアチア

hr_HR

チェコ語

チェコ共和国

cs_CZ

デンマーク語

デンマーク

da_DK

オランダ語

ベルギー

nl_BE

オランダ語

ベルギー

nl_BE_EURO

オランダ語

オランダ

nl_NL

オランダ語

オランダ

nl_NL_EURO

英語

オーストラリア

en_AU

英語

カナダ

en_CA

英語

アイルランド

en_IE

英語

アイルランド

en_IE_EURO

英語

ニュージーランド

en_NZ

英語

南アフリカ

en_ZA

英語

英国

en_GB

エストニア語

エストニア

et_EE

フィンランド語

フィンランド

fi_FI

フィンランド語

フィンランド

fi_FI_EURO

フランス語

ベルギー

fr_BE

フランス語

ベルギー

fr_BE_EURO

フランス語

カナダ

fr_CA

フランス語

ルクセンブルク

fr_LU

フランス語

ルクセンブルク

fr_LU_EURO

フランス語

スイス

fr_CH

ドイツ語

オーストリア

de_AT

ドイツ語

オーストリア

de_AT_EURO

ドイツ語

ルクセンブルク

de_LU

ドイツ語

ルクセンブルク

de_LU_EURO

ドイツ語

スイス

de_CH

ギリシャ語

ギリシャ

el_GR

ハンガリー語

ハンガリー

hu_HU

アイスランド語

アイスランド

is_IS

イタリア語

スイス

it_CH

ラトビア語

ラトビア

lv_LV

リトアニア語

リトアニア

lt_LT

マケドニア語

マケドニア

mk_MK

ノルウェー語 (ボークモール)

ノルウェー

no_NO

ノルウェー語 (ニーノスク)

ノルウェー

no_NO_NY

ポーランド語

ポーランド

pl_PL

ポルトガル語

ブラジル

pt_BR

ポルトガル語

ポルトガル

pt_PT

ポルトガル語

ポルトガル

pt_PT_EURO

ルーマニア語

ルーマニア

ro_RO

ロシア語

ロシア

ru_RU

セルビア語 (キリル)

ユーゴスラビア

sr_YU

セルビア-クロアチア語

ユーゴスラビア

sh_YU

スロバキア語

スロバキア

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


2. Java Foundation Classes で利用可能な書記体系

2.1 概要

Java Foundation Classes (AWT、Swing、2D、Input Method Framework、ドラッグ&ドロップ) では通常、ロケールの特徴は書記体系により異なります。国や言語に特有な違いはありません。JFC において書記体系は、ホストのオペレーティングシステムにある程度依存し、複数言語の同時使用を完全にサポートすることは不可能な場合があります。

JFC が提供するすべての機能が、JFC がサポートする書記体系で、以下の状況において適切に動作することが考慮されています。

Sun の Java 2 Software Development Kit, Standard Edition, v. 1.3.1 および国際化版の Java 2 Runtime Environment, Standard Edition, v. 1.3.1 は、以下に示すすべての書記体系をサポートします。米国語版の Java 2 Runtime Environment, Standard Edition, v. 1.3.1 は、ラテン文字書記体系の西欧文字サブセットのみをサポートします。ピア AWT コンポーネントは、書記体系のサブセットのみでサポートされます。右端の列を参照してください。

各種機能領域の詳細は、以降のセクションで説明します。

完全にサポートされる書記体系

書記体系

言語

Windows コードページ

Solaris エンコーディング

Linux エンコーディング

ピア AWT コンポーネント

アラビア文字

アラビア語

1256

8859-6

未サポート

未サポート

中国語 (簡体字)

中国語

936

gb2312, UTF-8, GBK

GBK, gb2312

サポート

中国語 (繁体字)

中国語

950

cns11643, UTF-8

未サポート

サポート

ヘブライ文字

ヘブライ語

1255

8859-8

未サポート

未サポート

日本語文字

日本語

932

eucJP(1), UTF-8, PCK

eucJP(1)

サポート

韓国語文字

韓国語

949

5601, UTF-8

未サポート

サポート

ラテン文字 - 西欧文字サブセット

英語、フランス語、ドイツ語、イタリア語、スペイン語、スウェーデン語など

1252

8859-1, 8859-15

8859-1

サポート

(1) Solaris の eucJP は、JIS 文字セット X 0201、X 0208、および X 0212 をサポートします。Linux の eucJP は、X 0201 および X 0208 のみをサポートします。

 

提供されるがテストされていない書記体系

書記体系

言語

Windows コードページ

Solaris エンコーディング

Linux エンコーディング

ピア AWT コンポーネント

中国語 (繁体字)

中国語

(上記を参照)

BIG5 (追加)

未サポート

サポート

キリル文字

ベラルーシ語、ロシア語など

1251

8859-5

未サポート

未サポート

ギリシャ文字

ギリシャ語

1253

8859-7

未サポート

未サポート

ラテン文字 - バルト文字サブセット

ラトビア語、リトアニア語

1257

8859-4, 8859-13

未サポート

未サポート

ラテン文字 - 中欧文字サブセット

チェコ語、ハンガリー語、ポーランド語など

1250

8859-2

未サポート

未サポート

ラテン文字 - トルコ文字サブセット

トルコ語など

1254

8859-9

未サポート

未サポート

2.2 テキスト入力

テキスト入力のサポートは、キーボードレイアウトの解釈と、インプットメソッドを使ったテキスト変換という 2 つの部分から構成されます。キーボードレイアウトの解釈については、Java 2 プラットフォームは完全にホストオペレーティングシステムに依存します。インプットメソッドを使ったテキスト変換については、Java 2 プラットフォームは、Java プログラミング言語で開発されたインプットメソッドに加え、ホストオペレーティングシステムのインプットメソッドマネージャを使用するネイティブインプットメソッドをサポートします。

Java プログラミング言語で実装されたインプットメソッドにおけるロケールのサポートは、ホストオペレーティングシステムおよびその各国語対応版ではなく、インストール済みのインプットメソッドにのみ依存します。ただし、Java プログラミング言語でピアコンポーネントを利用して実装したインプットメソッドのサポートは、実装に依存します。以下を参照してください。

プラットフォームごとに、キーボードレイアウトおよびネイティブインプットメソッドのサポート内容を示します。

Windows

Windows 95、98、Me、および NT では J2RE は、すべてのキーボードレイアウト、または特定の各国語対応版のホストオペレーティングシステムにインストール可能な IMM (Input Method Manager) ベースのインプットメソッドの使用をサポートします。

Windows 2000 では J2RE は、Unicode 以外のコードページを使用するキーボードレイアウト、および IMM ベースのインプットメソッドの使用をサポートします。

グローバル IME はサポートされません。

Java プログラミング言語で実装されたインプットメソッドは、全バージョンの Windows 上の全コンポーネントでサポートされます。

Solaris および Linux

J2RE は、特定の Solaris ロケールで使用されるキーボードレイアウトまたはインプットメソッドの使用をサポートします。

Java プログラミング言語で実装するインプットメソッドは、(Swing テキストコンポーネントなどの) 軽量コンポーネントでサポートされますが、(AWT テキストコンポーネントなどの) ピアコンポーネントではサポートされません。

2.3 テキストの描画

アプリケーションでフォントを選択する方法には次の 2 つがあります。

軽量コンポーネントでのテキスト描画

仮想フォント名を使用する場合、少なくともホストロケールの書記体系のテキスト、およびラテン文字書記体系の西欧文字サブセットがサポートされます。

実フォント名を使用する場合、単純な書記体系と複雑な書記体系を区別する必要があります。単純な書記体系では文字とグリフを 1 対 1 でマッピングし、グリフはベースラインに常に左から右へと配置されます。複雑な書記体系では、コンテキストによって同じ文字に対する異なるグリフの使用、右から左への配置、行レイアウト間のグリフの並べ替え、グリフ配置での異なる規則の使用 (特に結合記号の場合) などが行われます。

2D テキスト描画システムは、上記の表に示す単純な書記体系と複雑な書記体系との組み合わせをサポートします。これらの制限内で、サポートされる書記体系の範囲はフォントによって決定されます。1 つの TrueType フォントは、Unicode 文字セット全体を網羅するグリフと、Unicode ベースの文字からグリフへのマッピングを提供します。このフォントがあれば、2D は上記の表に示す複雑な書記体系と、すべての単純な書記体系をサポートできます。これ以外の複雑な書記体系はサポートされません。

ピアコンポーネントでのテキスト描画

仮想フォント名を使用する場合、ホストオペレーティングシステムの書記体系でのテキストがサポートされます。

実フォント名を使用する場合、書記体系に対してフォントがグリフを提供するので、ホストオペレーティングシステムのロケールの書記体系でのテキストがサポートされます。

印刷でのテキスト描画

2 つの印刷 API があります。

2D 印刷 API を使用したテキスト描画は、画面上でのテキスト描画と同じ程度に動作します。Windows 上での AWT 印刷 API を使用したテキスト描画は、画面上でのテキスト描画と同じ程度に動作します。Solaris および Linux 上での AWT 印刷 API を使用したテキスト描画は、ラテン文字書記体系の西欧文字サブセットおよび日本語でのみ動作します。

2.4 コンポーネントの方向

コンポーネントの方向の属性は、Swing コンポーネントおよびレイアウトマネージャだけに影響し、ピア AWT コンポーネントには影響しません。また、ホストオペレーティングシステムには依存しません。以下のクラスは、コンポーネントの方向をサポートします。

java.awt.BorderLayout
java.awt.FlowLayout
javax.swing.BorderFactory
javax.swing.JApplet
javax.swing.JButton
javax.swing.JCheckBox
javax.swing.JCheckBoxMenuItem
javax.swing.JDesktopPane
javax.swing.JDialog
javax.swing.JEditorPane
javax.swing.JFrame
javax.swing.JInternalFrame
javax.swing.JLabel

javax.swing.JLayeredPane
javax.swing.JListBox
javax.swing.JMenu
javax.swing.JMenuBar
javax.swing.JMenuItem
javax.swing.JPanel
javax.swing.JPasswordField
javax.swing.JPopupMenu
javax.swing.JProgressBar
javax.swing.JRadioButton
javax.swing.JRadioButtonMenuItem
javax.swing.JRootPane
javax.swing.JScrollPane

javax.swing.JSlider
javax.swing.JTabbedPane
javax.swing.JTextArea
javax.swing.JTextField
javax.swing.JTextPane
javax.swing.JToggleButton
javax.swing.JToolBar
javax.swing.JToolTip
javax.swing.JTree
javax.swing.ProgressMonitor
javax.swing.border.Border

 

2.5 ドラッグ&ドロップ

Windows 95、98、および Me では、各国語対応版のホストオペレーティングシステムの書記体系でのテキストを、アプリケーション間で転送できます。

Windows NT および 2000 では、任意の Unicode テキストをアプリケーション間で転送できます。

Solaris および Linux では、ホストオペレーティングシステムの文字エンコーディングのテキストをアプリケーション間で転送できます。

アプリケーションがホストオペレーティングシステムに依存せずに任意の Unicode テキストを転送する必要のある場合、直列化を利用することで実現できます。直列化を使用するには、単一のフレーバ DataFlavor.stringFlavor をサポートする Transferable を作成します。このフレーバは、String の直列化表現を表します。この場合、ターゲットも必ず stringFlavor をサポートするようにしてください。転送時には、AWT は String を一方に直列化し、他方に直列化復元します。この転送はネイティブプラットフォームのテキスト転送よりかなり時間がかかりますが、ネイティブ転送が失敗するような場合にも成功します。


3. ユーザインタフェースの翻訳

Java 2 Runtime Environment

Java 2 Runtime Environment, Standard Edition, v. 1.3.1 で提供されるユーザインタフェース要素には、Swing のダイアログ、実行環境が標準出力および標準エラーストリームに出力するメッセージ、J2RE が提供するツールが生成するメッセージが含まれます。これらのユーザインタフェース要素は、以下の言語に対応します。

言語

ロケール ID

中国語 (簡体字)

zh_CN

中国語 (繁体字)

zh_TW

英語

en

フランス語

fr

ドイツ語

de

イタリア語

it

日本語

ja

韓国語

ko

スペイン語

es

スウェーデン語

sv

Java 2 Software Development Kit

Java 2 Software Development Kit, Standard Edition, v. 1.3.1 が提供するユーザインタフェース要素には、J2RE が提供する要素に加え、J2SDK にのみ付属するツールが生成するメッセージが含まれます。このユーザインタフェース要素は、以下の言語に対応します。

言語

ロケール ID

英語

en

日本語

ja


Copyright © 1996-2001 Sun Microsystems, Inc. All Rights Reserved.

Contact us

Sun
Java ソフトウェア