5.8.*TBLの作成とJIS,EBCDIC変換を参考にしてQDCXLATEを使用しJIS->EBCDICの変換をしていますが、梶iシフトJISコードのx'878A')をEBCDICに変換する事ができません。変換テーブルはQ897337290を使用しています。
変換テーブル(*TBL)はあくまで、SBCSですので、漢字には関係がありません。
QDCQXLATEの漢字変換オプションで使用されるDBCS用の変換テーブルは、私の知る限りでは、公開されていません。コマンドが内部オブジェクトとして、参照しているのでしょう。
この鰍ェ出ない、という話は、ML400でも数回出ていたように思います。皆さんの内容を参考にしつつ。
原因
そもそも、SJISは、マ
イクロソフトが制定した(勝手にやった、というイメージがあるらしい...)コード体系と、
IBMのコード体系に違いがあるのが問題なのです。
下のgifは、Stirlingで、X'FA58'だけではなく、X'878A’でも、(株)が出ることを示したものです。
X'878A'は、
機種依存文字ですので、「多分」変換は対象外だと思います。
X'FA58'の鰍ナ、うまく変換できます。
また、漢字変換テーブルは、QDCXLATEでは、公開されていませんが、TOOL
BOXでは、 修正できる漢字テーブルが含まれています(QDCXALTE用ではありません。独自の変
換ツールが入っています)。
尚、相談者の方からは、QDCXLATEの実行前に、X'878A'→X'FA58'に置き換える処理を加えた、との連絡を頂きました。ちょっと、処理速度が落ちますが、仕方ないですね。
参考
ML400での、AI様、KI様の記事を参考にさせていただきました。この場をお借りしてお礼を申し上げます。ありがとうございました。
追記 2000-8-26
********************************************************************************
* IBM eNetwork パーソナル・コミュニケーションズ AS/400 Version 4.20 *
* Windows 95、Windows NT *
* *
* お読みください ! *
* (README.TXT) *
********************************************************************************
の中に、 ====================================================================
日本語 943 コード・ページの IBM 選択の PC コード・ポイントのサポート
(日本のみ)
====================================================================
いくつかの DBCS-PC コード・ポイントが、同じ DBCS ホストに重複してマッピング
されています。 重複する PC コード・ポイントはアップロード時にサポートされます。
ダウンロード時には、DBCS ホストはデフォルトにより NEC 選択にマッピングされます。
PCSWIN.INI の [DBCS] セクションに "CP943_IBM=Y" が指定されている場合には、
DBCS ホストは IBM 選択にマッピングされます。以下は、16 進数のコード・マッピング
の関係を示すリストと PCSWIN.INI の 例です。 DBCS ホスト NEC 選択 IBM 選択
========= ========== ==========
41F1 8754 FA4A
41F2 8755 FA4B
41F3 8756 FA4C
41F4 8757 FA4D
41F5 8758 FA4E
41F6 8759 FA4F
41F7 875A FA50
41F8 875B FA51
41F9 875C FA52
41FA 875D FA53
446D 878A FA58
446E 8782 FA59
446F 8784 FA5A PCSWIN.INI の例
...
[DBCS]
CP943_IBM=Y
...
という記事がありました(まだ、確認していません)。
2000-8-9 |