NLS 関数:現在のロケールに関する情報を返します。
モジュール:USE DFNLS
形式
result = NLSGetLocaleInfo ( type, outstr )
type
(入力) INTEGER(4)。要求される NLS パラメタ。パラメタ名の一覧は,「NLS ロケール情報パラメタ表」を参照してください。
outstr
(出力) CHARACTER*(*)。現在のロケールに設定するパラメタ。outstr に置かれたすべてのパラメタ設定は,文字列です。パラメタ設定が数値である場合,数値の ASCII 表現が使用されます。要求パラメタが日付または時刻の文字列の場合,outstr の書式の解釈方法の説明が「NLS 日時書式」に与えられています。
結果
結果の型は INTEGER(4) です。成功であれば,結果は outstr に書き込まれた文字数です。または,outstr がゼロの大きさであれば,結果は要求した情報を保持するために必要な文字数です。そうでなければ,結果は以下のエラー・コード (DFNLS.F90 で定義) の 1 つです。
NLS$ErrorInvalidLIType - 与えられた type が無効です。
NLS$ErrorInsufficientBuffer - outstr バッファが小さすぎますが,ゼロではありません (そのため,必要な大きさが返されます)。
NLS$LI パラメタは引数 type に使用され,NLSGetLocaleInfo が outstr に返すロケール情報を選択します。NLS$NoUserOverride と NLS$LI パラメタを包含的 OR で組み合わせることができます。これにより,NLSGetLocaleInfo が他のユーザー上書きをバイパスし,常にシステム基本値を返すようにすることができます。以下の表は,NLS$LI パラメタとその説明を一覧表示したものです。
NLS ロケール情報パラメタ表 | |
---|---|
パラメタ | 説明 |
NLS$LI_ILANGUAGE | 言語を示す ID。 |
NLS$LI_SLANGUAGE | 言語の完全なローカライズされた名前。 |
NLS$LI_SENGLANGUAGE | ISO 標準 639 からの言語の完全な英語名。これは常に ASCII 127 文字サブセットにマップされる文字に制限されます。 |
NLS$LI_SABBREVLANGNAME | ISO 標準 639 で定義されている 2 文字言語短縮形に副言語を示す適切な第 3 文字を追加した言語の短縮形。 |
NLS$LI_SNATIVELANGNAME | 言語の母国語名。 |
NLS$LI_ICOUNTRY | IBM 国コードとしても参照される国際電話コードを基本とした国コード。 |
NLS$LI_SCOUNTRY | 国の完全なローカライズ名。 |
NLS$LI_SENGCOUNTRY | 国の完全な英語名。これは常に ASCII 127 文字サブセットにマップされる文字に制限されます。 |
NLS$LI_SABBREVCTRYNAME | ISO 標準 3166 からの国の短縮名。 |
NLS$LI_SNATIVECTRYNAME | 国の母国語名。 |
NLS$LI_IDEFAULTLANGUAGE | このロケールで話されている第 1 言語の言語 ID。これが提供されているので,部分的に指定されたロケールを基本値で完全にすることができます。 |
NLS$LI_IDEFAULTCOUNTRY | このロケールの第 1 国の国コード。これが提供されているので,部分的に指定されたロケールを基本値で完全にすることができます。 |
NLS$LI_IDEFAULTANSICODEPAGE | このロケールに関連する ANSI コードページ。 |
NLS$LI_IDEFAULTOEMCODEPAGE | このロケールに関連する OEM コードページ。 |
NLS$LI_SLIST | 並び項目の区切りに使う文字。たとえば,多くのロケールではコンマです。 |
NLS$LI_IMEASURE | 計測システム (S.I.) が使われる場合,この値は 0 で,計測の U.S. システムの場合は 1 です。 |
NLS$LI_SDECIMAL | 小数点区切りに使う文字。これには,数字 0 ~ 9 を含めることはできません。 |
NLS$LI_STHOUSAND | 小数点の左側の桁の組間の区切りに使う文字。これには,数字 0 ~ 9 を含めることはできません。 |
NLS$LI_SGROUPING | 小数点の左側の桁の各組の大きさ。明示的な大きさは各組に対して必要です。大きさはセミコロンで区切ります。最後の値が 0 であれば,その前の値が繰り返されます。1000 を組にするには,"3;0" を指定します。 |
NLS$LI_IDIGITS | 小数点の桁数。 |
NLS$LI_ILZERO | 小数点欄に先行ゼロを使うかどうかを決定します。
0 - 先行ゼロを使わない 1 - 先行ゼロを使う |
NLS$LI_INEGNUMBER | 負の数字をどのように表すかを決定します。
0 - 負の数値を括弧内に置く:(1.1) 1 - 負符号を前に置く:-1.1 2 - 負符号と空白を前に置く:- 1.1 3 - 負符号を後ろに置く:1.1- 4 - 空白と負符号を後ろに置く:1.1 - |
NLS$LI_SNATIVEDIGITS | ASCII の 0 ~ 9 と等価な 10 個の文字。 |
NLS$LI_SCURRENCY | ローカル通貨記号として使う文字。数字 0 ~ 9 は使えません。 |
NLS$LI_SINTLSYMBOL | ISO 4217 "Codes for the Representation of Currencies and Funds" で指定されている国際通貨シンボルの 3 文字。この後ろにこの文字を金額と区切るための文字があります。 |
NLS$LI_SMONDECIMALSEP | 通貨小数点区切りとして使う文字。これには,数字 0 ~ 9 を含めることはできません。 |
NLS$LI_SMONTHOUSANDSEP | 小数点の左側の桁の組間の通貨区切りとして使う文字。これには,数字 0 ~ 9 を含めることはできません。 |
NLS$LI_SMONGROUPING | 小数点の左側の通貨桁の各組の大きさ。最後の値が 0 であれば,その前の値が繰り返されます。1000 を組にするには,"3;0" を指定します。 |
NLS$LI_ICURRDIGITS | ローカル通貨書式の小数点桁数。 |
NLS$LI_IINTLCURRDIGITS | 国際通貨書式の小数点桁数。 |
NLS$LI_ICURRENCY | 正の通貨をどのように表すかを決定します。
0 - 区切りなしで通貨記号を前に置く:$1.1 1 - 区切りなしで通貨記号を後ろに置く:1.1$ 2 - 通貨記号と空白を前に置く:$ 1.1 3 - 空白と通貨記号を後ろに置く:1.1 $ |
NLS$LI_INEGCURR | 負の通貨をどのように表すかを決定します。
0 ($1.1) 1 -$1.1 2 $-1.1 3 $1.1- 4 (1.1$) 5 -1.1$ 6 1.1-$ 7 1.1$- 8 -1.1 $ ($ の前に空白) 9 -$ 1.1 ($ の後ろに空白) 10 1.1 $- ($ の前に空白) 11 $ 1.1- ($ の後ろに空白) 12 $ -1.1 ($ の後ろに空白) 13 1.1- $ ($ の前に空白) 14 ($ 1.1) ($ の後ろに空白) 15 (1.1 $) ($ の前に空白) |
NLS$LI_SPOSITIVESIGN | 正符号の文字。数字 0 ~ 9 は使えません。 |
NLS$LI_SNEGATIVESIGN | 負符号の文字。数字 0 ~ 9 は使えません。 |
NLS$LI_IPOSSIGNPOSN | 正の値の書式化指標を決定します。
0 - 金額と通貨記号を括弧で囲む。 1 - 金額と通貨記号の前に符号文字を置く。 2 - 金額と通貨記号の後ろに符号文字を置く。 3 - 通貨記号の直ぐ前に符号文字を置く。 4 - 通貨記号の直ぐ後ろに符号文字を置く。 |
NLS$LI_INEGSIGNPOSN | 正の値の書式化指標を決定します。NLS$LI_IPOSSIGNPOSN と同じ値。 |
NLS$LI_IPOSSYMPRECEDES | 1 であれば通貨記号が前に置かれ,0 であれば正の金額の後ろに置かれます。 |
NLS$LI_IPOSSEPBYSPACE | 1 であれば通貨記号は正の金額から空白で区切られ,0 であればその逆です。 |
NLS$LI_INEGSYMPRECEDES | 1 であれば通貨記号が前に置かれ,0 であれば負の金額の後ろに置かれます。 |
NLS$LI_INEGSEPBYSPACE | 1 であれば通貨記号は負の金額から空白で区切られ,0 であればその逆です。 |
NLS$LI_STIMEFORMAT | 時刻書式文字列。有効な文字列の説明は,「NLS 日時書式」を参照してください。 |
NLS$LI_STIME | 時刻区切り文字。数字 0 ~ 9 は使えません。 |
NLS$LI_ITIME | 時刻書式。
0 - 12 時間書式。 1 - 24 時間書式。 |
NLS$LI_ITLZERO | 時刻欄に先行ゼロを使うかどうかを決定します。
0 - 先行ゼロを使わない。 1 - 時間に先行ゼロを使う。 |
NLS$LI_S1159 | AM を示す文字。 |
NLS$LI_S2359 | PM を示す文字。 |
NLS$LI_SSHORTDATE</font> | このロケールの短い日付書式文字。d,M および Y は,各々日,月 および年に置き換えられます。有効な文字列の説明は,「NLS 日時書式」を参照してください。 |
NLS$LI_SDATE | 日付区切り文字。数字 0 ~ 9 は使えません。 |
NLS$LI_IDATE | 短い日付書式の順番。
0 - 月-日-年。 1 - 日-月-年。 2 - 年-月-日。 |
NLS$LI_ICENTURY | 短い日付のみに完全な 4 桁西暦を使うかどうかを指定します。
0 - 2 桁の年。 1 - 4 桁西暦。 |
NLS$LI_IDAYLZERO | 短い日付のみの日欄に先行ゼロを使うかどうかを指定します。
0 - 先行ゼロを使わない。 1 - 先行ゼロを使う。 |
NLS$LI_IMONLZEROv | 短い日付のみの月欄に先行ゼロを使うかどうかを指定します。
0 - 先行ゼロを使わない。 1 - 先行ゼロを使う。 |
NLS$LI_SLONGDATE | このロケールの長い日付書式文字。返される文字列は,引用符 (' ') で囲まれた文字列です。引用符内のどの文字もそのまま残されています。d,M および Y は,各々日,月 および年に置き換えられます。 |
NLS$LI_ILDATE | 長い日付書式の順番。
0 - 月-日-年。 1 - 日-月-年。 2 - 年-月-日。 |
NLS$LI_ICALENDARTYPE | 現在使用されているカレンダーの形式を指定します。
1 - グレゴリオ暦 (米国)。 2 - グレゴリオ暦 (英語文字列)。 3 - 日本の年。 4 - 中華民国の年。 5 - 韓国の年。 |
NLS$LI_IOPTIONALCALENDAR | 別のカレンダー形式が有効で,このロケールで利用可能かを指定します。これは,すべての有効な別のカレンダーのヌルで区切られた一覧です。
0 - 別の形式なし。 1 - グレゴリオ暦 (ローカル)。 2 - グレゴリオ暦 (英語文字列)。 3 - 日本の年。 4 - 中華民国の年。 5 - 韓国の年。 |
NLS$LI_IFIRSTDAYOFWEEK | 週の第 1 日目を指定します。
0 - SDAYNAME1 1 - SDAYNAME2 2 - SDAYNAME3 3 - SDAYNAME4 4 - SDAYNAME5 5 - SDAYNAME6 6 - SDAYNAME7 |
NLS$LI_IFIRSTWEEKOFYEAR | 年の第 1 週目を指定します。
0 - 1/1 を含む週。 1 - 1/1 の次の第 1 の完全な週。 2 - 少なくとも 4 日を含む第 1 週。 |
NLS$LI_SDAYNAME1 - NLS$LI_SDAYNAME7 |
週の各日の母国語名。1= Monday,2 = Tuesday,など。 |
NLS$LI_SABBREVDAYNAME1 - NLS$LI_SABBREVDAYNAME7 |
週の各日の母国語短縮名。1 = Mon,2 = Tue,など。 |
NLS$LI_SMONTHNAME1 - NLS$LI_SMONTHNAME13 |
各月の母国語名。1 = January,2 = February,など。ロケールに存在すれば,13 = 13 番目の月。 |
NLS$LI_SABBREVMONTHNAME1 - NLS$LI_SABBREVMONTHNAME13 |
各月の母国語短縮名。1 = Jan,2 = Feb,など。ロケールに存在すれば,13 = 13 番目の月。 |