第3章 C APIリファレンス
3.2 住所クレンジング
3.2.3 クレンジング結果操作
int *code 【OUT】
処理情報の数値を格納する領域を指定します。
取得呼び出し時のパラメーターをチェックする目的でNULLを指定することができます。NULLを指定した場合、処理情報値は取 得されません。
格納される値については「8.4.4 住所クレンジング」を参照してください。
char *message 【OUT】
復帰値に対応したメッセージを格納する領域のアドレスを指定します。領域は呼出元が確保する必要があります。
格納されるメッセージについては「8.3.2 住所クレンジングの復帰値/例外一覧」を参照してください。文字列はNULLターミネート されます。
メッセージは最長で1023バイトです(NULLターミネートは含みません)。
NULLを指定した場合、メッセージは取得されません。
size_t messageBufferSize 【IN】
messageパラメーターで与えられる領域の大きさをバイト数で指定します。
0を指定した場合はメッセージは取得されません。
指定されたバイト数がメッセージを格納するのに十分な大きさでない場合、可能な限り書き込みます。メッセージは途中で切れます が、NULLターミネート文字列になることは保証されます。
void *reserve 【IN】
予約域です。NULLを指定します。NULL以外を指定した場合はエラーになります。
復帰値
正常終了した場合は0で復帰します。エラーが発生した場合は0以外で復帰します。
復帰値の詳細は「8.3.2 住所クレンジングの復帰値/例外一覧」を参照してください。
int index 【IN】
何個分の住所情報を格納できるIQJADDRESSを生成するかを指定します。
1~50の数値を指定してください。
参考
iqjaddress_cleanser_getAddressesByPostalCode、iqjaddress_cleanser_getAddressCandidatesを使用しない場合は、1を指定すれば 十分です。
char *message 【OUT】
復帰値に対応したメッセージを格納する領域のアドレスを指定します。領域は呼出元が確保する必要があります。
格納されるメッセージについては「8.3.2 住所クレンジングの復帰値/例外一覧」を参照してください。文字列はNULLターミネート されます。
メッセージは最長で1023バイトです(NULLターミネートは含みません)。 NULLを指定した場合、メッセージは取得されません。
size_t messageBufferSize 【IN】
messageパラメーターで与えられる領域の大きさをバイト数で指定します。
0を指定した場合はメッセージは取得されません。
指定されたバイト数がメッセージを格納するのに十分な大きさでない場合、可能な限り書き込みます。メッセージは途中で切れます が、NULLターミネート文字列になることは保証されます。
void *reserve 【IN】
予約域です。NULLを指定します。NULL以外を指定した場合はエラーになります。
復帰値
正常終了した場合は0で復帰します。エラーが発生した場合は0以外で復帰します。
復帰値の詳細は「8.3.2 住所クレンジングの復帰値/例外一覧」を参照してください。
3.2.3.2 iqjaddress_cleanser_destroyIQJADDRESS
機能説明
住所情報格納用のIQJADDRESSインスタンスを破棄します。
呼び出し形式
int iqjaddress_cleanser_destroyIQJADDRESS ( IQJADDRESS address,
char *message,
size_t messageBufferSize, void *reserve
);
パラメーターの説明
IQJADDRESS address 【IN】
住所情報格納用インスタンスのアドレスを指定します。iqjaddress_cleanser_createIQJADDRESS関数で取得したIQJADDESSインス タンスを指定します。
NULLを指定した場合、エラーとなります。
char *message 【OUT】
復帰値に対応したメッセージを格納する領域のアドレスを指定します。領域は呼出元が確保する必要があります。
格納されるメッセージについては「8.3.2 住所クレンジングの復帰値/例外一覧」を参照してください。文字列はNULLターミネート
されます。
メッセージは最長で1023バイトです(NULLターミネートは含みません)。
NULLを指定した場合、メッセージは取得されません。
size_t messageBufferSize 【IN】
messageパラメーターで与えられる領域の大きさをバイト数で指定します。
0を指定した場合はメッセージは取得されません。
指定されたバイト数がメッセージを格納するのに十分な大きさでない場合、可能な限り書き込みます。メッセージは途中で切れます が、NULLターミネート文字列になることは保証されます。
void *reserve 【IN】
予約域です。NULLを指定します。NULL以外を指定した場合はエラーになります。
復帰値
正常終了した場合は0で復帰します。エラーが発生した場合は0以外で復帰します。
復帰値の詳細は「8.3.2 住所クレンジングの復帰値/例外一覧」を参照してください。
3.2.3.3 iqjaddress_cleanser_getElement
機能説明
IQJADDRESSインスタンスから住所情報を文字列で取得します。
注意
・ 各クレンジング関数が正常終了した場合だけ呼び出してください。正常終了でない場合の動作は不定です。
・ 各クレンジング関数が正常終了しても、クレンジング結果が取得できない場合があります。詳細については「2.2.6 クレンジング結 果取得」の「注意」を参照してください。
呼び出し形式
int iqjaddress_cleanser_getElement ( const IQJADDRESS address, int index,
int elementKey, char *element,
size_t elementBufferSize, char *message,
size_t messageBufferSize, void *reserve
);
パラメーターの説明
const IQJADDRESS address 【IN】
住所情報格納用インスタンスを指定します。iqjaddress_cleanser_createIQJADDRESS関数で取得したIQJADDESSインスタンスを指 定します。
NULLを指定した場合、エラーとなります。
int index 【IN】
addressパラメーターで与えられるIQJADDRESSインスタンスの何番目の住所情報を取得するかを指定します。
0以上の数値で指定します。最初のデータを指定する場合は0です。
格納されているデータ数の範囲外の値を指定した場合、エラーとなります。
ポイント
iqjaddress_cleanser_getAddress関数で取得した住所情報から取り出す場合、indexは0を指定してください。
int elementKey 【IN】
取得する住所情報を指定します。指定可能な値は以下のとおりです。
値 取得する情報 値 取得する情報
1 都道府県 11 郵便番号(半角)
2 郡 12 都道府県読み(全角カタカナ)
3 市区町村 13 郡読み(全角カタカナ)
4 政令区 14 市区町村読み(全角カタカナ)
5 通り名 15 政令区読み(全角カタカナ)
6 大字/町 16 通り名読み(全角カタカナ、全角算用数字) 7 字/丁目 17 大字/町読み(全角カタカナ、全角算用数字)
8 番地 18 字/丁目読み(全角カタカナ、全角算用数字)
9 その他 19 カスタマバーコード
10 地名コード(半角) char *element 【OUT】
住所情報の文字列を格納する領域を指定します。クレンジング時に指定したエンコーディングで格納されます。
格納される文字列は最長で1600バイトです。
取得呼び出し時のパラメーターをチェックする目的でNULLを指定することができます。NULLを指定した場合、住所情報文字列を 取得しません。
注意
- 郵便番号は、ひとつの住所に複数の郵便番号が対応していることがあります。そのため、char postalCode[][8] (7桁の郵便番号 +NULL文字)でキャストして情報を取得してください。
postalCode[x][0]にNULL文字が入っているインデックスが郵便番号配列の末尾です。
- カスタマバーコードは、ひとつの住所に複数の郵便番号が対応している場合に、それぞれの郵便番号に対応したカスタマバー コードを取得することができます。char customerBarcode[][21](20桁のカスタマバーコード+NULL文字)でキャストして情報を取 得してください。
customerBarcode[x][0]にNULL文字が入っているインデックスがカスタマバーコード配列の末尾です。郵便番号配列の末尾と 同じインデックスになります。
size_t elementBufferSize 【IN】
elementパラメーターで与えられた領域の大きさをバイト数で指定します。
0を指定した場合は住所情報の文字列は格納されません。
領域サイズが住所情報の文字列を格納するのに十分な大きさでない場合、エラーになります。elementKeyパラメーターで郵便番 号を指定する場合は、1600バイト以上を確保してください。
char *message 【OUT】
復帰値に対応したメッセージを格納する領域のアドレスを指定します。領域は呼出元が確保する必要があります。
格納されるメッセージについては「8.3.2 住所クレンジングの復帰値/例外一覧」を参照してください。文字列はNULLターミネート されます。
メッセージは最長で1023バイトです(NULLターミネートは含みません)。
NULLを指定した場合、メッセージは取得されません。
size_t messageBufferSize 【IN】
messageパラメーターで与えられる領域の大きさをバイト数で指定します。
0を指定した場合はメッセージは取得されません。
指定されたバイト数がメッセージを格納するのに十分な大きさでない場合、可能な限り書き込みます。メッセージは途中で切れます が、NULLターミネート文字列になることは保証されます。
void *reserve 【IN】
予約域です。NULLを指定します。NULL以外を指定した場合はエラーになります。
復帰値
正常終了した場合は0で復帰します。エラーが発生した場合は0以外で復帰します。
復帰値の詳細は「8.3.2 住所クレンジングの復帰値/例外一覧」を参照してください。
3.2.3.4 iqjaddress_cleanser_getElementValue
機能説明
IQJADDRESSインスタンスから住所情報を数値で取得します。
注意
・ 各クレンジング関数が正常終了した場合だけ呼び出してください。正常終了でない場合の動作は不定です。
・ 各クレンジング関数が正常終了しても、クレンジング結果が取得できない場合があります。詳細については「2.2.6 クレンジング結 果取得」の「注意」を参照してください。
呼び出し形式
int iqjaddress_cleanser_getElementValue ( const IQJADDRESS address,
int index, int elementKey, int *elementValue, char *message,
size_t messageBufferSize, void *reserve
);
パラメーターの説明
const IQJADDRESS address 【IN】
住所情報格納用インスタンスのアドレスを指定します。iqjaddress_cleanser_createIQJADDRESS関数で取得したIQJADDESSインス タンスを指定します。
NULLを指定した場合、エラーとなります。
int index 【IN】
addressパラメーターで与えられるIQJADDRESSインスタンスの何番目の住所情報を取得するかを指定します。
0以上の数値を指定してください。最初のデータを指定する場合は0です。
格納されているデータ数の範囲外の値を指定した場合、エラーとなります。
ポイント
iqjaddress_cleanser_getAddress関数で取得した住所情報から取り出す場合、indexは0を指定してください。