付録O.5 置換文字コードの設定例
置換文字コードの設定例を次に示します。
- 〈この項の構成〉
-
(1) バイナリデータからUnicode文字列へ変換する例(置換種別が半角で半角文字に置換する場合)
変換元の文字コードを「UTF16」とし,入力文字を「」(Unicode文字列:0xD840 0xDC0B(サロゲートペア))とします。
バイナリフォーマット定義の[未定義コード置換時の処理]は,「全角・半角スペースに置換する」を指定します。
未定義コードをUnicodeの「a」(0x0061)に変換するプロパティの設定例と,置換結果は次のとおりです。
- ●プロパティの設定例
-
csc.dt.undefined.replace.bin2xml=0061
- ●置換結果
-
「0xD840 0xDC0B」(未定義コード)→「0x0061」
(2) バイナリデータからUnicode文字列へ変換する例(置換種別が半角で全角文字に置換する場合)
変換元の文字コードを「UTF16」とし,入力文字を「」(Unicode文字列:0xD840 0xDC0B(サロゲートペア))とします。
バイナリフォーマット定義の[未定義コード置換時の処理]は,「全角・半角スペースに置換する」を指定します。
未定義コードをUnicodeの「あ」(0x3042)に変換するプロパティ設定例,および置換結果は次のとおりです。
- ●プロパティの設定例
-
csc.dt.undefined.replace.bin2xml=3042
- ●置換結果
-
「0xD840 0xDC0B」(未定義コード)→「0x3042」
(3) バイナリデータからUnicode文字列へ変換する例(置換種別が全角で全角文字に置換する場合)
変換元の文字コードを「UTF16」とし,入力文字を「」(Unicode文字列:0xD840 0xDC0B(サロゲートペア))とします。
バイナリフォーマット定義の[未定義コード置換時の処理]は,「全角スペースに置換する」を指定します。
未定義コードをUnicodeの「あ」(0x3042)に変換するプロパティ設定例,および置換結果は次のとおりです。
- ●プロパティの設定例
-
csc.dt.undefined.replace.bin2xml.full=3042
- ●置換結果
-
「0xD840 0xDC0B」(未定義コード)→「0x3042」
(4) Unicode文字列からバイナリデータへ置換する例(置換種別が半角の場合)
変換先の文字コードを「KEIS+EBCDIC」とし,入力文字を「」(0xFF76)とします。
バイナリフォーマット定義の[未定義コード置換時の処理]は,「全角・半角スペースに置換する」を指定します。
未定義コードをKEIS+EBCDICの「a」(0x81)に変換するプロパティ設定例,および置換結果は次のとおりです。
- ●プロパティの設定例
-
csc.dt.undefined.replace.keisC=81
- ●置換結果
-
「0xFF76」(未定義コード)→「0x81」
(5) Unicode文字列からバイナリデータへ置換する例(置換種別が全角の場合)
変換先の文字コードを「KEIS+EBCDIC」とし,入力文字を「」(:0x4E02)とします。「」が未定義文字となり,置換種別を全角にするために入力文字列に「」を指定しています。
バイナリフォーマット定義の[未定義コード置換時の処理]は,「全角・半角スペースに置換する」を指定します。
未定義コードをKEIS+EBCDICの「丁」(0xC3FA)に変換するプロパティ設定例,および置換結果は次のとおりです。
- ●プロパティの設定例
-
csc.dt.undefined.replace.keisC.full=C3FA
- ●置換結果
-
「0x4E02」(未定義コード)→「0xC3FA」
(6) Unicode文字列からバイナリデータへ置換する例(置換種別が半角で全角文字に置換する場合)
変換先の文字コードを「KEIS+EBCDIC」とし,入力文字を「」(0xFF76)とします。
バイナリフォーマット定義の[未定義コード置換時の処理]は,「全角・半角スペースに置換する」を指定します。
未定義コードをKEIS+EBCDICの「丁」(0xC3FA)に変換するプロパティ設定例,および置換結果は次のとおりです。
- ●プロパティの設定例
-
csc.dt.undefined.replace.keisC=0A42C3FA0A41※
- 注※
-
全角文字に置換するため,シフトコード(0A42と0A41)を定義します。
- ●置換結果
-
「0xFF76」(未定義コード)→「0x0A42 0xC3FA 0x0A41」
(7) Unicode文字列からバイナリデータへ置換する例(置換種別が全角で半角文字に置換する場合)
変換先の文字コードを「KEIS+EBCDIC」とし,入力文字を「」(:0x4E02)とします。「」が未定義文字となり,置換種別を全角にするために入力文字列に「」を指定しています。
バイナリフォーマット定義の[未定義コード置換時の処理]は,「全角・半角スペースに置換する」を指定します。
未定義コードをKEIS+EBCDICの「a」(0x81)に変換するプロパティ設定例,および置換結果は次のとおりです。
- ●プロパティの設定例
-
csc.dt.undefined.replace.keisC.full=0A41810A42※
- 注※
-
半角文字に置換するため,シフトコード(0A42と0A41)を定義します。
- ●置換結果
-
「0x4E02」(未定義コード)→「0x0A41 0x81 0x0A42」
(8) Unicode文字列からバイナリデータへ置換する例(未定義文字を削除する場合)
変換先の文字コードを「MS932」とし,入力文字を「」(0x2232)とします。
バイナリフォーマット定義の[未定義コード置換時の処理]は,「全角・半角スペースに置換する」を指定します。
未定義コードを削除(0バイト置換)するプロパティの設定例,および置換結果は次のとおりです。
- ●プロパティの設定例
-
csc.dt.undefined.replace.ms932=
- ●置換結果
-
「0x2232」(未定義コード)→「」(0バイト置換)