ページの先頭行へ戻る
Interstage Charset ManagerStandard Edition V9 使用手引書 拡張データ変換機能編
FUJITSU Software

付録B 他社ベンダ文字コード系の変換

他社ベンダ文字コード系を変換することができます。すべての2バイトの文字コードが変換対象となります。

他社ベンダ文字コード系の変換は、変換元および変換先のキーワード値にCDS_USR1/CDS_USR2を指定して行います。キーワード値については、“2.2 文字コードの種類”を参照してください。

CDS_USR1とCDS_USR2の2バイトの文字コードの変換対応定義を記述した制御文ファイルを作成し、文字コード変換をカスタマイズすることで、他社ベンダ文字コード系の変換が可能となります。

制御文ファイルについては、“2.7.2 文字コード変換カスタマイズ”を参照してください。

Charset Managerでは、以下の他社ベンダ文字コード系の変換を行うための制御文ファイルのサンプルをご提供します。

ユーザ独自の対応定義を行いたい場合(サンプル以外の変換を行いたい場合)は、制御文ファイルに対応定義を追加してください。

制御文ファイルのサンプルを使用して、他社ベンダ文字を変換する手順を以下に示します。

1)相互変換する文字コード系の組み合わせを選択する

相互変換できる文字コード系の組み合わせは、以下のとおりです。

IBM

KEIS

JIPS

SJIS(MS)

S90

JEF

UCS2

IBM

KEIS

JIPS

2)文字コード変換テーブルを作成する

文字コード変換カスタマイズ機能を使用して、文字コード変換テーブルを作成します。

各文字コードの変換対応を定義するための制御文ファイルと、未定義文字の置き換え文字の文字コードを16進表記で指定してください。
制御文ファイルは、以下のディレクトリに格納されています。

Windows系

[Charset Managerのインストールディレクトリ]\wconv\ctl\

UNIX系

/etc/opt/FSUNadj/wconv/bin/ctl

表B.1 各文字コード系の組み合わせで使用する制御文ファイル名

CDS_USR1

CDS_USR2

ファイル名

IBM

KEIS
JIPS
SJIS(MS)
S90
JEF
UCS2

ibmkeis.ctl
ibmjips.ctl
ibmms.ctl
ibms90.ctl
ibmjef.ctl
ibmucs2.ctl

KEIS

JIPS
SJIS(MS)
S90
JEF
UCS2

keisjips.ctl
keisms.ctl
keiss90.ctl
keisjef.ctl
keisucs2.ctl

JIPS

SJIS(MS)
S90
JEF
UCS2

jipsms.ctl
jipss90.ctl
jipsjef.ctl
jipsucs2.ctl

未定義文字の置き換え文字のデフォルトは、アンダースコア("_")です。
各コード系のアンダースコアの文字コードは、以下のとおりです。

コード系

置き換え文字

IBM
KEIS
JIPS
SJIS(MS)
S90
JEF
UCS2

426d
a1b2
2132
8151
a1b2
a1b2
ff3f

IBMコード系とSJIS(MS)コード系で相互変換する場合

wconvcust -p ctl\ibmms.ctl -repchar_usr1 426d -repchar_usr2 8151 -ov 0

repchar_usr1には、“表B.1 各文字コード系の組み合わせで使用する制御文ファイル名”でCDS_USR1の列にある文字コード系の置き換え文字を指定します。repchar_usr2には、CDS_USR2の列にある文字コード系の置き換え文字を指定します。

3)文字コード系を指定する

wconv_open関数、またはwconv_char_init関数で、変換元文字コード系と変換先文字コード系に、CDS_USR1 と CDS_USR2 の組み合わせを指定します。
各コード系の組み合わせで、どちらが CDS_USR1 または CDS_USR2 になるのかは、“表B.1 各文字コード系の組み合わせで使用する制御文ファイル名”を参照してください。

IBMコード系からSJIS(MS)コード系へ変換する場合

wconv_char_init( CDS_USR2,CDS_USR1 );

SJIS(MS)コード系からIBMコード系へ変換する場合

wconv_char_init( CDS_USR1,CDS_USR2 );

注意

  • 拡張データ変換機能を使用して他社ベンダ文字コード系の変換を行う場合、同一システム上で扱える他社ベンダ文字コード系は固定です。他社ベンダ文字コード系を変換するための文字コード変換テーブルは1システムに1組のため、最初に決定した二つのコード系の相互変換しかできません。
    変換する他社ベンダ文字コード系を変更する場合は、手順の1)~3)を再度実行する必要があります。

  • 拡張データ変換機能の他社ベンダ文字コード系の変換を行う場合は、すべての2バイトの文字コードが変換対象となります。ただし、標準で添付されているサンプルの制御文ファイルには、変換対応が定義されていない文字コードもあります。変換対応が定義されていない文字コードを変換するためには、制御文ファイルへ変換対応を追加してください。詳細は、“2.7.2 文字コード変換カスタマイズ”を参照してください。

  • 提供されているサンプル制御文ファイル(jipsjef.ctl)では、JIPS-JコードとJEFコードとの変換対応を定義しています。この制御文ファイルのJIPS-JコードをJIPS-Eコードに変えて、文字コード変換テーブルを作成することで、JIPS-EコードとJEFとの変換を行うことが可能となります。

  • KEIS、JIPSのシフトコードを、JEFのシフトコードに変換することはできません。シフトコードは変換できないためNULLに変換されます。