InfoDirectory使用手引書 |
目次 索引 |
第3部 SDK編 | > 第5章 アプリケーション開発環境(LDAP C API) | > 5.2 関数インタフェース | > 5.2.19 エンコード/デコード処理 |
この関数は、以下の変換規則にしたがってコード変換を行います。
- Shift JIS → UTF-8
- UTF-8 → Shift JIS
- ISO-8859-1 → UTF-8
- UTF-8 → ISO-8859-1
- Unicode → UTF-8
- UTF-8 → Unicode
- Shift JIS → UTF-8
- UTF-8 → Shift JIS
- EUC → UTF-8
- UTF-8 → EUC
- ISO-8859-1 → UTF-8
- UTF-8 → ISO-8859-1
- Unicode → UTF-8
- UTF-8 → Unicode
【指定形式】
int ldap_conv_utf(
char *input,
char **output,
int in,
int out
);【パラメタの説明】
- input
入力データのアドレスを指定します。入力データの最後にはNULL文字“\0”が設定されていなければなりません。
- output
出力データのアドレスを設定するための、ポインタ変数のアドレスを指定します。
- in
入力データのコード種別を指定します。inパラメタとoutパラメタのどちらか一方は、UTF-8を指定する必要があります。
- LDAP_CHARS_OPT_SJIS : Shift JIS
- LDAP_CHARS_OPT_88591 : ISO-8859-1
- LDAP_CHARS_OPT_UCS2 : Unicode
- LDAP_CHARS_OPT_UTF8 : UTF-8
- LDAP_CHARS_OPT_EUCJP : EUC
- LDAP_CHARS_OPT_SJIS : Shift JIS
- LDAP_CHARS_OPT_88591 : ISO-8859-1
- LDAP_CHARS_OPT_UCS2 : Unicode
- LDAP_CHARS_OPT_UTF8 : UTF-8
- out
出力データのコード種別を指定します。inパラメタとoutパラメタのどちらか一方は、UTF-8を指定する必要があります。
- LDAP_CHARS_OPT_SJIS : Shift JIS
- LDAP_CHARS_OPT_88591 : ISO-8859-1
- LDAP_CHARS_OPT_UCS2 : Unicode
- LDAP_CHARS_OPT_UTF8 : UTF-8
- LDAP_CHARS_OPT_EUCJP : EUC
- LDAP_CHARS_OPT_SJIS : Shift JIS
- LDAP_CHARS_OPT_88591 : ISO-8859-1
- LDAP_CHARS_OPT_UCS2 : Unicode
- LDAP_CHARS_OPT_UTF8 : UTF-8
【復帰値】
この関数は、復帰値として以下に示す値を返します。
- 正常完了 : 出力データのサイズ(バイト数)
- 異常完了 : 0
正常完了の場合には、outputパラメタで指定されたポインタ変数に、出力データのアドレスが設定されています。
エラーの詳細は、errnoを参照してください。
errnoとSystem Errorsの対応は以下のとおりです。
表: エラー対応
System Errors
Errno
意味
ERROR_INVALID_PARAMETER
EINVAL
パラメタの指定に誤りがあります。
ERROR_NOT_ENOUGH_MEMORY
ENOMEM
メモリ不足が発生しました。
ERROR_NO_UNICODE_TRANSLATION
EILSEQ
指定されたコードには該当する文字コードが含まれていません。
ERROR_INSUFFICIENT_BUFFER
E2BIG
指定されたデータの形式が違います。
−
ENOENT
ライブラリのロードに失敗しました。
【注意事項】
- コード種別
inパラメタおよびoutパラメタには、コード変換の種類に応じて以下の値を指定します。
表: 指定するコード種別
コード変換の種類
指定するパラメタ
In
out
EUC → UTF-8 LDAP_CHARS_OPT_EUCJP LDAP_CHARS_OPT_UTF8 Shift JIS → UTF-8 LDAP_CHARS_OPT_SJIS LDAP_CHARS_OPT_UTF8 ISO-8859-1 → UTF-8 LDAP_CHARS_OPT_88591 LDAP_CHARS_OPT_UTF8 Unicode → UTF-8 LDAP_CHARS_OPT_UCS2 LDAP_CHARS_OPT_UTF8 UTF-8 → EUC LDAP_CHARS_OPT_UTF8 LDAP_CHARS_OPT_EUCJP UTF-8 → Shift JIS LDAP_CHARS_OPT_UTF8 LDAP_CHARS_OPT_SJIS UTF-8 → ISO-8859-1 LDAP_CHARS_OPT_UTF8 LDAP_CHARS_OPT_88591 UTF-8 → Unicode LDAP_CHARS_OPT_UTF8 LDAP_CHARS_OPT_UCS2
- 動的メモリの解放
ldap_conv_utf()で通知された領域は、不要になった時点でldap_memfree()を使用して解放しなければなりません。詳細は、動的メモリの解放を参照してください。
目次 索引 |