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

2.1 変換概要

拡張データ変換プログラムは、文字コードまたは数値データを、任意の文字コード系の文字コードまたは数値データ形式に変換する、C言語関数およびコマンドを提供します。

拡張データ変換プログラムは、複数の関数から構成されています。

呼び出し順序は以下のとおりです。

呼び出しモデル1

一般的な呼び出しモデルです。

wconv_openとwconv_closeは、必ずセットで利用します。

(1)wconv_open関数は、指定のレコード書式へのデータ変換を制御するための情報テーブル(データ変換情報テーブル)を生成します。データ変換情報テーブルは、wconv_t型(<wconv.h>)で定義します。この関数はレコード書式ごとに呼び出します。
wconv_open関数については、“2.3.1 wconv_open”を参照してください。

(2)文字コード変換カスタマイズ関数群、および数値データ変換カスタマイズ関数群で変換処理のカスタマイズを行います。各レコード書式で設定することができます。
カスタマイズする必要がない場合は、呼び出す必要はありません。
数値データ変換カスタマイズ関数群については、“2.4.1 wconv_setnumpadding”、“2.4.2 wconv_setnumsignchk”を、文字コード変換カスタマイズ関数群については、“2.5.1 wconv_setreduction”、“2.5.2 wconv_setendshift”、“2.5.3 wconv_setrepchar”、“2.5.4 wconv_setcodepadding”を参照してください。

(3)wconv_convert関数は、レコード書式と項目書式に従って、1レコード分のデータを変換します。
オープン関数とクローズ関数の間で繰り返し呼び出すことができます。
wconv_convert関数については、“2.3.4 wconv_convert”を参照してください。

(4)wconv_close関数は、データ変換情報テーブルを開放します。
この関数はレコード書式ごとに呼び出します。
wconv_close関数については、“2.3.5 wconv_close”を参照してください。

呼び出しモデル2同じコード系の組み合わせの複数のレコード書式がある場合

複数のレコード書式が存在し、それらの文字コード系の組み合わせが同じ場合に呼び出すためのモデルです。たとえば、1つのファイルの中(1つの文字コード系)で、レコードごとに書式が違う場合などに利用します。

wconv_openExとwconv_closeExは、必ずセットで利用します。

wconv_char_initとwconv_char_endは、必ずセットで利用します。

(1) wconv_char_init関数は、指定のコード系へのコード変換を制御するための情報テーブル(文字コード変換情報テーブル)を生成します。文字コード変換情報テーブルは、wconv_c型(<wconv.h>)で定義します。変換元コード系と変換先コード系の組み合わせが同じ文字コード項目が、複数のレコード書式に存在する場合に呼び出すことができます。
変換元コード系と変換先コード系の組み合わせごとに呼び出します。
wconv_char_init関数については、“2.3.2 wconv_char_init”を参照してください。

(2) wconv_openEx関数は、データ変換情報テーブルを生成します。
この関数はレコード書式ごとに呼び出します。wconv_char_init関数で初期化した文字コード変換環境を使用してデータ変換を行うことができます。
wconv_openEx関数については、“2.3.3 wconv_openEx”を、wconv_char_init関数については、“2.3.2 wconv_char_init”を参照してください。

(3) 数値データ変換カスタマイズ関数群、および文字コード変換カスタマイズ関数群で変換処理のカスタマイズを行います。各レコード書式で設定することができます。
カスタマイズする必要がない場合は呼び出す必要はありません。
数値データ変換カスタマイズ関数群については、“2.4.1 wconv_setnumpadding”、“ 2.4.2 wconv_setnumsignchk”文字コード変換カスタマイズ関数群については、“2.5.1 wconv_setreduction”、 “2.5.2 wconv_setendshift”、“2.5.3 wconv_setrepchar”、“2.5.4 wconv_setcodepadding”を参照してください。

(4) wconv_convert 関数は、レコード書式と項目書式に従って、1レコード分のデータを変換します。
オープン関数とクローズ関数の間で繰り返し呼び出すことができます。
wconv_convert 関数については、“2.3.4 wconv_convert”を参照してください。

(5) wconv_closeEx関数は、wconv_openEx関数でオープンしたデータ変換情報テーブルを開放します。この関数はレコード書式ごとに呼び出します。
wconv_closeEx 関数については、“2.3.7 wconv_closeEx”を、wconv_openEx関数については、“2.3.3 wconv_openEx”を参照してください。

(6) wconv_char_end関数は、文字コード変換情報テーブルを開放します。
wconv_char_end関数については、“2.3.6 wconv_char_end”を参照してください。

拡張データ変換関数のインポートライブラリとインクルードファイルは以下のとおりです。

ライブラリ

Windows版
格納先ディレクトリ

Charset Managerインストールディレクトリ\WCONV

ファイル名

F3FYWCNV.LIB

Unix版
格納先ディレクトリ

32ビットライブラリは、以下に格納されます。

/etc/opt/FSUNadj/wconv/lib

64ビットライブラリは、以下に格納されます。

  • Linux for x64版

    /etc/opt/FSUNadj/wconv/lib64
  • Solaris(64bit)版

    /etc/opt/FSUNadj/wconv/lib/sparcv9
ファイル名

libwcv.so.1

ヘッダファイル

Windows版
格納先ディレクトリ

Charset Managerインストールディレクトリ\WCONV

ファイル名

WCONV.H

Unix版
格納先ディレクトリ

/etc/opt/FSUNadj/wconv/include

ファイル名

wconv.h

注意

  • Windows for x64版では、64ビット版のライブラリとヘッダファイルが、64ビット版のインストールディレクトリ配下に格納されます。

  • マルチスレッドでコード変換をする場合に、スレッド数に制限はありません。

  • wconv_open、 wconv_openEx、wconv_char_initおよびカスタマイズ関数群は、変換定義情報を構築するため、処理コストがかかります。これら関数は、呼び出し回数を抑えるよう設計してください。