日本語コードを別のコードに変換しながら複写する
-
ファイル中の日本語データを別の文字コードの日本語データに変換しながら複写を行います。
A−VXのファイルからWindowsのファイル(テキストファイルやCSVファイル)にするなら、これを使うよりもコードの変換とWindowsのファイルへの出力を同時に行ってくれる#NFCNVを使用した方が良いです。
下の表に書いたような2つのファイルがあり、日本語がA-VX日本語コード(NEC内部コード(E))のHENKAN01から、JISコードのHENKAN02に複写するとします。
話を簡単にするために、2つのファイルは同じレコード構成で日本語項目と英数字項目の2つだけ、数字項目は無しとします。
ファイル名 HENKAN01 ファイル編成 順編成 レコード長 80バイト 領域サイズ 100セクタ 日本語
文字コードA-VX日本語コード
(NEC内部コード(E))レコード構成 日本語項目:8文字
英数字項目:64文字
↓↓変換・複写↓↓
ファイル名 HENKAN02 ファイル編成 順編成 レコード長 80バイト 領域サイズ 100セクタ 日本語
文字コードJISコード レコード構成 日本語項目:8文字
英数字項目:64文字
HENKAN01には、A-VX日本語コードで以下のような情報が入っているとします。
INF FIL DVL OVR あいうえお愛上尾ABCD1234!"#$ かきくけこ柿区毛EFGH5678%&'(
RUNコマンド入力行で、「#ABC;」と入力して「ENTERキー」を押します。
簡易操作ユーティリティ#ABCが起動されました。
「5.複写(変換)」を選択します。
「2.ファイル(日本語コード変換)」を選択します。
変換元(入力)ファイルの情報を入力します。
今回の例では、ファイル名はHENKAN01、装置名はMSD000、オープンモードはPROTECT、読み取りエラーの場合はABORTするにしました。
変換先(出力)ファイルの情報を入力します。 今回の例では、ファイル名はHENKAN02、装置名はMSD000、削除レコードはNOにしました。
変換元の文字コードと変換後の文字コードを入力します。
下の表の規則で入力します。入力コードには変換元の文字コード:A−VX日本語コードなのでT11、出力コードには変換後の文字コード:JISなのでT22と入力します。
番号 英数字項目のコード 日本語項目のコード 1 A-VX日本語コード A-VX日本語コード 2 JISコード JISコード 3 JIPS(E)コード JIPS(E)コード 4 A-VX JIPS(E)コード A-VX JIPS(E)コード
「T(英数字項目の番号)(日本語項目の番号)」
例えば英数字項目がA-VX日本語コードで、日本語項目がJIPS(E)コードならば、T13になる。
日本語項目の位置と長さを入力します。
長さは「文字数×2」で入力します。
今回は、1文字目から8文字分(長さは8文字×2=16)なので、(1,16,K)と入力します。
もし、日本語項目が複数ある時は、(1,16,K),(20,10,K),(54,20,K)のように並べて入力します。
シフトコード(KI/KO)を付加するかどうかと実行結果を印刷するかどうかを選択できます。
今回はシフトコードはNO(付加しない)、実行結果リストはNO(印刷しない)としました。
ここで変換・複写作業が始まります
ファイルの大きさによりますが、一瞬〜数秒〜数分ぐらい掛かり、終わると最初の画面に戻ります。
簡易操作ユーティリティを終了したいときは、「99」と入力して「ENTERキー」を押します。
T11(A-VX日本語コード)からT22(JISコード)にした場合、#ABCのファイルのダンプリスト表示でそれぞれのファイルの状態を見てみると、
↓↓変換・複写↓↓
例えば、最初の「あ」はA-VX日本語コードだと「627F」、JISコードに変換すると「2422」(両方とも16進数表示)。
(当たり前の話だが)ちゃんとA-VX日本語コードから、JISコードに変換されています。
同じファイルをJIPS(E)コード(T33)に変換・複写した場合。
最初の文字「あ」は「E07F」とJIPS(E)コードの「あ」に変換されています。
同じファイルをA−VX JISP(E)コード(T44)に変換・複写した場合。
JIPS(E)コードと何が違うのかよく分かりませんが、
最初の文字「あ」は「E07F」とJIPS(E)コードの「あ」に変換されています。