NL_LANGINFO
Section: Linux Programmer's Manual (3)
Updated: 2014-05-28
Index JM Home Page
名前
nl_langinfo - 言語とロケールの情報を問い合わせる
書式
#include <langinfo.h>
char *nl_langinfo(nl_item item);
説明
nl_langinfo() 関数は、 localeconv(3) より柔軟なロケール情報へのアクセス方法を提供する。 ロケールカテゴリーの個々の要素や追加の要素を問い合わせることができる。
<langinfo.h> に定数として定義されていて、 item に指定できるロケール要素の例を以下に示す:
- CODESET (LC_CTYPE)
- 選択されたロケールで用いられる文字エンコード名を示す文字列を返す。 文字エンコード名としては、"UTF-8" や "ISO-8859-1"、"ANSI_X3.4-1968" (これは US-ASCII という名前の方がよく知られている) などがある。 この文字列は、"locale charmap" を実行して得られるものと同じである。 文字エンコード名のリストを得るには、"locale -m" を実行するとよい。 参考: locale(1)
- D_T_FMT (LC_TIME)
- ロケール固有の時間と日付を表現するときに、 strftime(3) で使用できる書式付き文字列を返す。
- D_FMT (LC_TIME)
- ロケール固有の日付を表現するときに、 strftime(3) で使用できる書式付き文字列を返す。
- T_FMT (LC_TIME)
- ロケール固有の時間を表現するときに、 strftime(3) で使用できる書式付き文字列を返す。
- DAY_{1-7} (LC_TIME)
- 曜日名 (週の n 番目の日の名前) を返す。[警告: この要素はアメリカの 慣習に従って DAY_1 が 日曜日となる。国際的な慣習 (ISO 8601) では月曜日が 週の最初の日である。]
- ABDAY_{1-7} (LC_TIME)
- 曜日 (週の n 番目の日) の省略名を返す。
- MON_{1-12} (LC_TIME)
- n 番目の月の名前を返す。
- ABMON_{1-12} (LC_TIME)
- n 番目の月の省略名を返す。
- RADIXCHAR (LC_NUMERIC)
- 基数記号 (小数点やコンマなど) を返す。
- THOUSEP (LC_NUMERIC)
- 千の位 (3 桁の数値) の区切り文字を返す。
- YESEXPR (LC_MESSAGES)
- yes/no の質問に対する肯定の応答を認識するために、 regex(3) 関数で使用できる正規表現を返す。
- NOEXPR (LC_MESSAGES)
- yes/no の質問に対する否定の応答を認識するために regex(3) 関数で使用できる正規表現を返す。
- CRNCYSTR (LC_MONETARY)
- 通貨記号を返す。 記号が数値の前に配置される場合は、"-" が通貨記号に前置される。 数値の後に記号が配置される場合は "+" が、 記号が基数文字と置き換わる場合は "." が前置される。
上記のリストは、要求できる定義のごく一部である。 詳細なリストは、 GNU C ライブラリリファレンスマニュアル を参照してほしい。
返り値
適切なカテゴリーのロケールが setlocale(3) によって選択されていない場合は、 nl_langinfo() は "C" ロケールのときに相当する文字列へのポインターを返す。
無効な item の場合は、空文字列へのポインターが返される。
このポインターは静的なデータ領域を指し、その内容は次回の nl_langinfo() や setlocale(3) の呼び出しによって書き替わることがある。
準拠
SUSv2, POSIX.1-2001.
例
以下のプログラムは、環境変数に基いて文字型 (character type) と数値のロケール を設定し、端末の文字集合と基数文字の問い合わせを行う。
#include <langinfo.h>
#include <locale.h>
#include <stdio.h>
#include <stdlib.h>
int
main(int argc, char *argv[])
{
setlocale(LC_CTYPE, "");
setlocale(LC_NUMERIC, "");
printf("%s\n", nl_langinfo(CODESET));
printf("%s\n", nl_langinfo(RADIXCHAR));
exit(EXIT_SUCCESS);
}
関連項目
locale(1), localeconv(3), setlocale(3), charsets(7), locale(7)
GNU C ライブラリリファレンスマニュアル
この文書について
この man ページは Linux man-pages プロジェクトのリリース 3.79 の一部 である。プロジェクトの説明とバグ報告に関する情報は http://www.kernel.org/doc/man-pages/ に書かれている。
関連キーワード
langinfo,
文字,
LANGINFO,
locale,
setlocale,
include,
名前,
item,
記号,
数値
Linux マニュアル 一覧
[man1]
[man2]
[man3]
[man4]
[man5]
[man6]
[man7]
[man8]
[a]
[b]
[c]
[d]
[e]
[f]
[g]
[h]
[i]
[j]
[k]
[l]
[m]
[n]
[o]
[p]
[q]
[r]
[s]
[t]
[u]
[v]
[w]
[x]
[y]
[z]
Index
- 名前
- 書式
- 説明
- 返り値
- 準拠
- 例
- 関連項目
- この文書について
This document was created by man2html, using the manual pages.
Time: 12:08:39 GMT, June 11, 2022