文字エンコーディングを別のエンコーディングに変換します。
構文:
call "CBL_STRING_CONVERT" using by reference in-string
by value in-length
by value in-encoding
by reference out-string
by reference out-length
by value out-encoding
by value flags
by reference reserved
returning status-code.
パラメーター:
- in-string
- ピクチャ: pic x(n)
- in-length
- ピクチャ: pic x(4) comp-5
- in-encoding
- ピクチャ: pic x(4) comp-5
- out-string
- ピクチャ: pic x(n)
- out-length
- ピクチャ: pic x(4) comp-x
- out-encoding
- ピクチャ: pic x(4) comp-5
- flags
- ピクチャ: pic x(4) comp-5
- reserved
- ピクチャ: pic x(4) comp-x
- status-code
- 「説明の読み方」を参照
入力パラメーター:
- in-string
- 変換するソース文字列。
- in-length
- ソース文字列の長さ。
- in-encoding
- ソース文字列のエンコーディング タイプ。次のいずれかになります。
値 |
Encoding |
0 |
UTF-8 |
1 |
UTF-16 (native) |
2 |
UTF-16 (portable) |
3 |
ASCII/MBCS 文字 (ANSI 文字 (Windows) または現在のロケール (UNIX)) |
4 |
EBCDIC 文字 (CHARSET"EBCDIC" エンコーディング) |
5 |
ASCII/MBCS 文字 (OEM 文字 (Windows) または現在のロケール (UNIX)) |
6 |
Base64 ASCII |
7 |
Base64 EBCDIC |
8 |
Base64 BINARY |
- out-length
- 変換後の文字列で使用できる最大バッファー長。
- 入口の値が 0 の場合、変換で必要になるバッファーのサイズのみが返され、呼び出しで実際の変換は行われません。
- out-encoding
- 変換後の文字列のエンコーディング タイプ。次のいずれかになります。
値 |
Encoding |
0 |
UTF-8 |
1 |
UTF-16 (native) |
2 |
UTF-16 (portable) |
3 |
ASCII/MBCS 文字 (ANSI 文字 (Windows) または現在のロケール (UNIX)) |
4 |
EBCDIC 文字 (CHARSET"EBCDIC" エンコーディング) |
5 |
ASCII/MBCS 文字 (OEM 文字 (Windows) または現在のロケール (UNIX)) |
6 |
Base64 ASCII
注: in-encoding が BASE64 BINARY の場合にのみ使用できます。
|
7 |
Base64 EBCDIC
注: in-encoding が BASE64 BINARY の場合にのみ使用できます。
|
8 |
Base64 BINARY
注: in-encoding が BASE64 ASCII または BASE64 EBCDIC の場合にのみ使用できます。
|
- flags
- 予約済み。ゼロに設定する必要があります。
- reserved
- ゼロに設定する必要があります。
出力パラメーター:
- out-string
- 変換後の文字列。変換後のデータが大きすぎて out-string に収まらない場合、エラーが発生します。
- in-string に、出力エンコーディングで相当する文字のない文字が含まれている場合は、それらの文字はシステム依存の置換文字に変換されます。
注: これが可能なのは、UTF エンコーディングから ASCII または EBCDIC 文字に変換する場合のみです。
- out-length
- out-string (変換後の文字列) の実際のバッファー長。
- status-code
- 変換の結果。次のいずれかになります。
値 |
結果 |
0 |
成功 |
1 |
ターゲットのバッファーが小さすぎる |
2 |
メモリ不足 |
3 |
サポートされていない変換 |
4 |
不使用 |
5 |
無効なソース データ |