ICONV_OPEN(3) | Linux Programmer's Manual | ICONV_OPEN(3) |
名前¶
iconv_open - 文字セット変換のためのディスクリプターを割り当てる
書式¶
#include <iconv.h>
iconv_t iconv_open(const char *tocode, const char *fromcode);
説明¶
iconv_open() 関数は、文字エンコーディング fromcode から 文字エンコーディング tocode へのバイト文字列変換に適した 変換ディスクリプターを割り当てる。
fromcode と tocode に使うことのできる値と、 サポートされる組み合わせは、システムに依存する。 GNU C ライブラリでは、使うことのできる値は iconv --list コマンドでリストされ、 リストされたすべての値の組み合わせがサポートされる。 さらに、 GNU C ライブラリと GNU libiconv ライブラリでは、 以下の接尾辞がサポートされている。
- //TRANSLIT
- tocode の後ろに文字列 "//TRANSLIT" が付いている場合、 翻訳 (transliteration) が有効になる。この場合、 変換先の文字セットで表現できない文字を、その文字と同じように見える 文字 (複数文字の場合もある) で表現することができる。
- //IGNORE
- tocode の後ろに文字列 "//IGNORE" が付いている場合、 変換先の文字セットで表現できない文字は黙って無視される。
この関数を読んで得られた変換ディスクリプターは、 iconv(3) で 何度でも使うことができる。 これは iconv_close(3) を使って解放されるまで有効である。
変換ディスクリプターは変換状態を持つ。 iconv_open() を用いて生成された後、変換状態は初期状態である。 iconv(3) を使うことにより、ディスクリプターの変換状態が変更される。 変換状態を初期状態に戻すには、 inbuf 引数を NULL として iconv(3) を用いること。
返り値¶
iconv_open() 関数は、新たに割り当てられた変換ディスクリプターを返す。 エラーの場合、この関数は errno を設定し、 (iconv_t) -1 を返す。
エラー¶
他のいろいろなエラーのうち、以下のエラーが起こりうる。
- EINVAL
- fromcode から tocode への変換は、この実装ではサポートされていない。
バージョン¶
この関数はバージョン 2.1 以降の glibc で利用可能である。
属性¶
この節で使用されている用語の説明については、 attributes(7) を参照。
インターフェース | 属性 | 値 |
iconv_open() | Thread safety | MT-Safe locale |
準拠¶
POSIX.1-2001, POSIX.1-2008, SUSv2.
関連項目¶
この文書について¶
この man ページは Linux man-pages プロジェクトのリリース 5.10 の一部である。プロジェクトの説明とバグ報告に関する情報は https://www.kernel.org/doc/man-pages/ に書かれている。
2017-09-15 | GNU |