第7回:実践!文字コード変換〔外字コード編〕

OrangeLab. 運営チーム
作成日時: - 更新日時:
Avatar

使用ソフトウェア:DataMagic for Windows Ver.2.2.2(コード変換・オプション for Windows)
今回は「DataMagic」を利用した外字コードへの変換方法をご説明します。
※下記バージョンのDataMagicについては、次の記事をご参照ください。
DataMagic 実践!文字コード変換〔外字コード編〕(Ver.3.0.0)

はじめに

HULFT Orange Lab.運営チームの佐々木です。
「DataMagic」の記事を担当しています。

近年、オンライン上では外字の使用を控える傾向が増えてきていますが、それでも人名・地名を代表として使用され続けています。
また企業で発送する郵送物などは、正式な地名/人名で印字する必要があります。
特に名前は大切なものであり、簡易な字体ではなく、本来の字体が好まれて使用されています。

しかし、環境によっては、JIS第1水準、第2水準の文字に含まれないものは表示されないため、外字フォーマットを取り込む必要があります。
 ※環境やソフトウェアで対応していない外字は○や□のように文字化けすることがあります。

よって外字は、入力するにも変換するにも苦労することが多いです。
今回はDataMagicを活用し、対象の外字データをコード変換してみましょう。

下記イメージのように外字データを含むIBMメインフレームの固定長データを、Shift_JISのCSVデータに変換します。


赤字がJIS第1、第2水準以外の外字で、コード変換が必要な文字となります。

準備

サンプルデータ[IBM(zOS)の固定長データ、外字テーブルデータ]

格納先は任意ではありますが、以下のフォルダを作成してください。
サンプルデータ格納先
C:\work\SAMPLE\inputdata\
出力データ格納先
C:\work\SAMPLE\outputdata\
外字テーブルデータ格納先
C:\work\SAMPLE\gtf\
※外字テーブルデータはサンプルとして用意した物を取り込み使用します。

準備として「DataMagic」を起動し、任意で作成した接続先に接続してください。

手順

Step01

タブボタンの「アダプタ」にある「CSV」を選択後、「新規作成」をクリックし出力ファイルの定義情報を作成します。

Step02

下記画面が起動しましたらIDと項目名を決めます。
その後適用ボタンをクリックし、出力ファイル定義を保存します。
 ※定義名は任意ですが、出力ファイル定義を「SAMPLE_GAIJI_OUT」としています。

項目名は以下の3つとなります。
  1. 会社名
  2. 代表者名
  3. 住所

Step03

タブボタンの「アダプタ」にある「フォーマット」を選択後、「新規作成」をクリックし入力ファイルの定義情報を作成します。

Step04

画面を参考に「項目名」は出力ファイル定義と同じものを設定し「バイト数」「項目タイプ」は下記を設定します。
  1. 会社名のバイト数「30」
  2. 代表者名のバイト数「20」
  3. 住所のバイト数「50」
  4. 項目タイプは3項目全て「M(漢字、キャラクタの混在)」
 ※定義名は任意ですが、入力ファイル定義を「SAMPLE_GAIJI_IN」としています。

「ゾーン/パック10進数詳細設定」も行います。
「設定ボタン」を押し、下記画面に従い「ゾーン部」を「F」に設定し、保存してください。



Step05

「CSV」と「フォーマット」に以下の情報が追加されたのが確認できると思います。

【CSV】


【フォーマット】

Step06

データ加工情報を作成するため、タブボタンから「データ加工」を選択し、操作メニューから「新規作成」を選択します。

Step07

下記画面が表示されますので任意のIDを入力してから、入力と書かれたボタンをダブルクリックします。
 ※ここではID名を「SAMPLE_GAIJI」としています。

Step08

下記画面の赤線で囲まれた項目を次のように設定します。
  1. 形式はフォーマットを選択し、アダプタのIDはStep04で作成したアダプタの入力ファイル定義を設定します。
  2. ファイル名はサンプルとして用意したファイル名の「SAMPLE_外字_IN」を指定します。

Step09

次にコード変換値を設定します。「漢字コード種」を「IBM漢字」に設定します。
入力設定は以上で完了です。

Step10

入力データの定義情報設定が終わると新たに抽出情報が作成され、入力情報と抽出情報が線によって結ばれますが
今回は抽出条件の指定などはありませんので、出力と書かれたのボタンをダブルクリックします。

Step11

下記画面が起動しましたら形式はCSVを選択し、アダプタのIDにStep01で定義した出力ファイル定義のIDを入れます。
※出力ファイル名は任意ですが「GAIJI_out」としています。

Step12

外字の設定を有効とするため下記画面のように項目を選択します。
「外字変換テーブル使用」を「使用する」を選択。
「外字変換テーブル格納パス」を準備用意した外字テーブルの格納ディレクトリを指定。
※入力欄の最後に「/gtf/」が設定されている為、外字定義ファイルの格納先指定は注意してください。

入力が終わりOKをクリックすると情報が保存されます。

Step13

抽出条件の●から出力条件の●へドラックし、つなげます。

Step14

抽出条件をダブルクリックすると新たにマッピング画面が開きます。



全てマッピングし、入出力の定義は同じである為設定を変えずそのままOKボタンで保存します。

Step15

以上で設定はすべて完了しましたので、画面の実行ボタンを押下しデータ加工結果を確認します。

Step16

実行すると下記画面が表示されますので、出力ファイル生成モードを確認し実行します。
正常終了しましたら出力データを確認してください。

Step17

下記は編集後のデータです。
外字の対象としていたデータが変換されていることが確認できると思います。

さいごに

今回の変換は視覚的にはわかりにくい為、少し解説をします。
下記データは変換用の外字テーブルデータをバイナリ表示したものです。
選択部分は入力データに「Dm」のコードがあった場合、該当コードをデータを「㈱」へ変換する定義になっています。



次のデータは入力データです。該当するコードを選択状態にしています。



次のデータは出力データです。該当するコードが変換されていることがわかります。



今回の外字コード変換ですが、外字のテーブル定義を用意することで様々な変換のパターンを用意することが可能です。
これらの機能を利用し、環境依存文字となる外字を対応することができます。

サンプルデータ

サンプルデータは入力データと外字テーブルデータをzip形式での提供となります。解凍してからご利用ください。

この記事は役に立ちましたか?
0人中0人がこの記事が役に立ったと言っています

コメント