National Language Support ルーチンの使用

Visual Fortran は,各国語化ルーチンとマルチバイト文字ルーチンの完全な National Language Support (NLS) ライブラリーを持っています。これらのルーチンを使って,さまざまな種類の言語でアプリケーションを作成することができます。

多くの言語では,一般的なシンボルと句読点がない (英国のポンド記号など),その言語が ASCII に含まれていない文字を使用する (ロシアのキリル文字),または 1 バイトでは表現しきれないほど多くの文字を持っている (中国語など) といった理由から,標準の ASCII 文字集合では十分に対応することができません。

アラビア語やロシア語などの多くの非 ASCII 言語では,拡張されたシングルバイト文字集合で十分に対応することができます。言語地域とコードページを変更するだけでよく,これはシステム・レベルで,またはプログラム中から行うことができます。しかし,日本語や中国語などの東洋の言語は,1 バイト文字としてはエンコードできない数千種類の文字を使用します。これらの文字を表現するためにはマルチバイト文字が必要となります。

文字集合はコードセットと呼ばれるテーブルに格納されています。コードセットには,3 つの構成要素があります。言語と国を表す地域 (たとえば,スペイン語は国によって違います),コンピュータのアルファベットを構成する文字表であるコードページ,および画面上の文字を表現するために使われるフォントです。この 3 つの構成要素は互いに独立に設定することができます。Windows オペレーティング・システムが動作しているコンピュータには,英語,アラビア語,スペイン語などの複数のコードセットが組み込まれています。中国語や日本語などのマルチバイト・コードセットは標準版には含まれていませんが,オペレーティング・システムの特殊な版に付属しています (たとえば,Windows NT 日本語版には日本語コードセットが付属しています)。

プログラムの起動時には,オペレーティング・システムから基本コードセットが取得されます。オペレーティング・システムをインストールするときには,システム提供のコードセットをインストールするようにしてください。インストールしたコードセットは,その後はいつでも使用できるようになります。コードセットを切り替えるには次の操作を行います。

  1. 「設定」から「コントロールパネル」を開きます。

  2. 「地域」アイコンをクリックします。

  3. 使用可能な地域 (言語と国) のドロップダウンリストから選択を行います。

新しい地域を選択すると,その地域がシステムの基本地域になり,変更するまで基本地域として使用されます。各地域には基本コードページと,基本の通貨,数値,および日付の書式が関連付けられています。


注意:新しい地域を選択しても,コンピュータを再起動するまで基本コードページは変更されません。

通貨,数値,および日付の書式は,「各国語」ダイアログボックスまたは「地域」ダイアログボックスを使って,地域とは切り離して単独で変更することができます。

地域はユーザーが使用できる文字集合を決定します。選択した地域は,この章で説明している NLS ルーチンの基本地域となりますが,NLS ルーチンではプログラム中から地域とそのパラメタを変更することができます。これらのルーチンは,オリジナルの外国語のプログラムを作成したり,同じプログラムのさまざまな国際マーケット版を作成するときに便利です。プログラム中から地域に加えた変更は,そのプログラム内でのみ通用し,システムの基本設定には影響しません。

独立に設定可能なコードページは,この章で説明しているマルチバイト (MB ルーチン) 文字ルーチンを制御します。MB ルーチンを使用する必要があるのは,コンピュータ上にマルチバイト文字コードセットをインストールしているユーザーだけです。標準コードセットはいずれもシングルバイト文字コードセットを使用します。

Visual Fortran ソース・コードでは,マルチバイト文字は文字列とソース注釈中でしか使用できないことに注意してください。変数名や文中で使用することはできません。プログラム中での地域の変更と同様に,プログラム中で行うコードページの変更は,そのプログラムでのみ有効で,システムの基本設定には影響しません。

NLS および MB ルーチンは,DFNLS.MODDFNLS.F90 から構成される DFNLS.LIB ライブラリーに含まれています。これらのルーチンを参照するためには,NLS または MB ルーチンを使用するすべてのプログラム単位に以下の文が存在している必要があります。

	USE DFNLS

この章では,文字集合と NLS ライブラリー・ルーチンについて説明しています。