Unicode
との変換は、どのように行えばよいのだろうか ?
お馴染みのデータ変換 API: QDCXLATE
ではない。
QDCXLATE
は EBCDIC/ASCII
の変換だけである。
Unicode
との変換は UNIX コマンドとして知られている iconv
関数が
System i でも提供されているので、これを利用することになる。
iconv
は
#include <iconv.h> size_t iconv(iconv_t, /* QtqIconvOpen() 関数によって取得される変換記述子 */ char** inbuf, /* 入力文字ストリング */ size_t, /* 入力文字ストリング長 */ char** outbuf, /* 出力文字ストリング */ size_t /* 出力文字ストリング長 */ )
のようにして比較的簡単なように見えるのだが、サイズ長が正確に指定されていなければ
ならなくて不正確である場合には iconv
がエラーを戻してしまう。
IBM サイトを iconv
で検索すれば iconv
のサンプル・ソースにたどり着けるが
日本語を iconv
を使って Unicode
との変換を実行するには骨が折れる。
近日中に弊社が開発したサービス・プログラムをこのサイトの Tools で公開する予定であるので
それを参考にされたほうがよいだろう。