プログラムの起動時には,現在の言語と国の設定がオペレーティング・システムから取得されます。ユーザーは「コントロールパネル」の「地域」アイコンを通して,この設定を変更することができます。また,システムからは現在のコードページも取得されます。
システム基本コンソール・コードページとシステム基本 Windows コードページがあります。コンソール・プログラムはシステム・コンソール・コードページを取得し,(QuickWin アプリケーションを含む) Windows プログラムはシステム Windows コードページを取得します。
NLS ライブラリーは,現在の地域 (ローカル・コードセット) を判定するルーチン,現在の地域のパラメタを返すルーチン,システムがサポートしているすべての地域一覧を作成するルーチン,および地域を別の言語,国,コードページに設定するルーチンを用意しています。これらのルーチンを次表に要約します。これらのルーチンで設定される地域とコードページは,そのルーチンを呼び出したプログラムまたはコンソールでのみ有効であることに注意してください。システムの基本設定を変更したり,他のプログラムやコンソールに影響を与えることはありません。
地域の設定または問い合わせを行うルーチン
名前 | 手続の形式 | 説明 |
NLSSetLocale | 関数 | 言語,国,およびコードページを設定します。 |
NLSGetLocale | サブルーチン | 現在の言語,国,およびコードページを取得します。 |
NLSGetLocaleInfo | 関数 | 現在のローカル・コードセットに関する要求された情報を取得します。 |
NLSEnumLocales | 関数 | システムがサポートしているすべての言語と国の組み合わせを返します。 |
NLSEnumCodepages | 関数 | システム上でサポートされているすべてのコードページを返します。 |
NLSSetEnvironmentCodepage | 関数 | 現在のコンソール・コードページを変更します。 |
NLSGetEnvironmentCodepage | 関数 | システム (Windows) コードページまたはコンソール・コードページのコードページ番号を返します。 |
次に例を示します。
USE DFNLS INTEGER(4) strlen, status CHARACTER(40) str strlen = NLSGetLocaleInfo(NLS$LI_SDAYNAME1, str) print *, str !「月曜日」と出力 strlen = NLSGetLocaleInfo(NLS$LI_SDAYNAME2, str) print *, str !「火曜日」と出力 strlen = NLSGetLocaleInfo(NLS$LI_SDAYNAME3, str) print *, str !「水曜日」と出力 ! ロケールをアメリカ英語に変更 status = NLSSetLocale("English", "United States") strlen = NLSGetLocaleInfo(NLS$LI_SDAYNAME1, str) print *, str !「Monday」と出力 strlen = NLSGetLocaleInfo(NLS$LI_SDAYNAME2, str) print *, str !「Tuesday」と出力 strlen = NLSGetLocaleInfo(NLS$LI_SDAYNAME3, str) print *, str !「Wednesday」と出力 END