Hitachi

Hitachi Advanced Data Binder AP開発ガイド


19.5.7 a_rdb_CNV_BINARYchar()(BINARY型データの変換)

〈この項の構成〉

(1) 機能

SQLのBINARY型のデータをC言語またはC++言語の文字列データに変換します。BINARY型のデータを文字列データに変換する場合の例を次の図に示します。

図19‒7 BINARY型のデータを文字列データに変換する場合の例

[図データ]

[説明]

BINARY型のデータを次の文字列定数の形式に変換し,格納領域の先頭から格納します。末尾には,ナル文字(0x00)が付加されます。

  • 変換後の文字列データの形式が2進数の場合:2進形式バイナリ定数

  • 変換後の文字列データの形式が16進数の場合:16進形式バイナリ定数

(2) 形式

#include <adbcnv.h>
 
signed short a_rdb_CNV_BINARYchar
(
  unsigned char                  *BINARY_Data,      /* In  */
  unsigned short                  BINARY_Length,    /* In  */
  unsigned short                  char_Type,        /* In  */
  char                           *char_Data,        /* Out */
  unsigned int                    BufferLength,     /* In  */
  void                           *Option            /* In  */
)

(3) 引数の説明

BINARY_Data

変換前のBINARY型のデータを格納している領域の先頭アドレスを指定します。

BINARY_Length

変換前のBINARY型のデータの長さを指定します(単位:バイト)。1〜32,000を指定できます。

char_Type

変換後の文字列データの形式を指定します。次のどちらかを指定してください。

  • 変換後の文字列データの形式が2進数の場合

    a_rdb_CNV_CHAR_TYPE_BINARY

  • 変換後の文字列データの形式が16進数の場合

    a_rdb_CNV_CHAR_TYPE_HEX

char_Data

変換後の文字列データ(C言語またはC++言語の文字列データ)を格納する領域の先頭アドレスを指定します。

BufferLength

変換後の文字列データを格納する領域の長さを指定します(単位:バイト)。次のどちらかの値を指定してください。

  • 変換後の文字列データの形式が2進数の場合

    BINARY_Lengthの値×8+1

  • 変換後の文字列データの形式が16進数の場合

    BINARY_Lengthの値×2+1

Option

NULLを指定します。値を指定しても無視されます。

(4) 戻り値

  1. a_rdb_CNV_BINARYchar()が正常に終了した場合,a_rdb_RC_CNV_SUCCESSが返却されます。

  2. エラーが発生した場合,戻り値にエラーコードが返却されます。エラーコードについては,「19.8 CLI関数の戻り値」を参照してください。

(5) 留意事項

変換前のデータ格納領域(BINARY_Data)と,変換後のデータ格納領域(char_Data)は重複しないようにしてください。