付録B.1 SJIS対応版との処理の違い
(1) X,Nタイプインタフェースの符号化方式
インタフェース項目のうち属性がX,およびNタイプのものについては,次の表に示す符号化方式でエンコードして使用してください。それ以外の符号化方式として扱った場合の動作は保証しません。
属性 |
符号化方式 |
備考 |
---|---|---|
Xタイプ |
UTF-8 |
ASCIIは1バイト/文字 それ以外は可変 |
Nタイプ |
UTF-16 |
2バイト/文字,または 4バイト/文字 |
(2) 文字コードチェックの違い
次の表に示すサブルーチンでは,Unicode体系でチェックを行います。
サブルーチンID |
サブルーチン名 |
SJIS |
Unicode |
---|---|---|---|
LXRPIA01 |
文字コードチェック |
(20〜7E) (A1〜DF) |
(20〜7E) (EFBDA1〜EFBDBF) (EFBE80〜EFBE9F) |
LXRPIB01 |
漢字コードチェック (漢字) |
(81〜9F:40〜FC) (E0〜EF:40〜FC) |
JIS X 0213:2004で定義された11233文字。ASCII(U+0020〜U+007E)および半角カナ(U+FF61〜U+FF9F)は含まれません。 |
LXRPIB02 |
漢字コードチェック (含外字) |
(81〜9F:40〜FC) (E0〜EF:40〜FC) (F0〜FC:40〜7E) (F0〜FC:80〜FC) |
LXRPIB01の範囲にUCS-2における私用領域(U+E000〜U+F8FF)と第15面および第16面を加えた範囲 |
(3) 半角カナ文字の違い
半角文字列を扱うサブルーチンで,文字列の長さを指定する場合の単位はバイト数です。このため表B-3に示すサブルーチンで入力文字列中に半角カナ文字を含む場合は,半角カナ1文字につき3バイトとして長さを指定してください。同様に,表B-4に示すサブルーチンでは,半角カナ1文字につき3バイトとして長さを出力します。
これによって,SJIS対応版と処理結果が異なる場合があります。
サブルーチンID |
サブルーチン名 |
長さを指定する項目 |
---|---|---|
LXRPIA05 |
文字列シフト |
I-SHFT-LENG |
LXRPIA06 |
文字列左詰め |
I-LENG |
LXRPIA07 |
文字列右詰め |
I-LENG |
LXRPIA08 |
文字列中央揃え |
I-LENG |
LXRPIA13 |
文字列前後反転 |
I-LENG |
LXRPIA14 |
指定文字削除 |
I-LENG, I-DEL-LENG |
LXRPIA15 |
空白削除 |
I-LENG |
LXRPIA16 |
不要空白削除 |
I-LENG |
LXRPIA17 |
第1文字列取得 |
I-LENG |
LXRPIA19 |
文字列交互挿入 |
I-1ST-LENG, I-2ND-LENG |
LXRPIA28 |
文字列切断 |
I-LENG |
LXRPIC01 |
半角→全角変換 |
I-LENG |
サブルーチンID |
サブルーチン名 |
長さが返される項目 |
---|---|---|
LXRPIA09 |
文字列有効桁数算出 |
O-LENG |
LXRPIA17 |
第1文字列取得 |
O-LENG |
Unicode対応版とSJIS対応版で処理が異なる例を次に示します。
(例1)文字列シフト(LXRPIA05)
(例2)文字列右詰め(LXRPIA07)
(例3)文字列有効桁数算出(LXRPIA09)