ロケールは、ユーザーの言語と文化の設定を識別します。ロケールによって、次の項目の形式が制御されます。
現在の JVM バージョン(1.4.2 まで)では、アラビア語ロケールで使用されるアラビアヒンズー数字、ヒンズー語ロケールで使用されるヒンズー数字など、ローカルな数字はサポートされていません。ColdFusion はすべてのロケールでアラビア数字を使用します。
ColdFusion では、ロケール名を指定するために 2 つの形式がサポートされています。1 つは標準の Java ロケール名です。もう 1 つは、ColdFusion 6.1 以前で使用されていた ColdFusion ネーミング規則です。
ColdFusion では、ロケールの値を次のように決定します。
デフォルトでは、JVM ロケールが使用されます。デフォルトの JVM ロケールはオペレーティングシステムのロケールです。ColdFusion Administrator の [Java と JVM の設定] ページの [JVM 引数] フィールドを使用すれば、ColdFusion の JVM ロケール値を明示的に設定できます。次に例を示します。
-Duser.language=de -Duser.country=DE. |
SetLocale 関数は、ColdFusion で日付、時刻、数値および通貨値を出力するために使用するデフォルトの形式を決定します。ColdFusion の現在のロケール設定を取得するには、GetLocale 関数を使用します。または、GetLocaleDisplayName 関数を使用して、ユーザーが認識できる形式でロケール名を取得できます。SetLocale をまだ呼び出していない場合、GetLocale は JVM のロケールを返します。
現在のロケールが与える影響は次の 2 つです。
以前のバージョンの ColdFusion では、デフォルトのロケールはオペレーティングシステムのロケールではなく、常に英語でした。日本語版の ColdFusion では、デフォルトのロケールは日本語でした。
次の例では、LSCurrencyFormat 関数を使用して、ColdFusion でサポートされているすべてのロケールの通貨単位を使用して 100,000 という値を出力します。このコードを実行すると、ブラウザーに返されるデータに対するロケールの影響を確認できます。
<!--- loop through list of locales; show currency values for 100,000 units ---> <cfloop LIST = "#Server.Coldfusion.SupportedLocales#" index = "locale" delimiters = ","> <cfset oldlocale = SetLocale(locale)> <cfoutput><p><b><I>#locale#</I></b><br> Local: #LSCurrencyFormat(100000, "local")#<br> International: #LSCurrencyFormat(100000, "international")#<br> None: #LSCurrencyFormat(100000, "none")#<br> <hr noshade> </cfoutput> </cfloop>
この例では、ColdFusion 変数の Server.Coldfusion.SupportedLocales を使用しています。この変数には、ColdFusion でサポートされているすべてのロケールのリストが含まれています。
アカウントにログイン