- | SetHeadChar() | SetFootChar() | SetRadixMode() | SetMode() |
---|---|---|---|---|
URL エンコード | % | 無 | 0 | 0 |
HEX エンコード | (半角スペース) | 無 | 0 | 1 |
Quoted-printable | = | 無 | 0 | 1 |
LDAP サーチフィルタエスケープ | \ | 無 | 0 | 1 |
16進数値実体参照 | &#x | ; | 0 | 1 |
10進数値実体参照 | &# | ; | 2 or 3 or 4 | 1 |
UNICODE エスケープ (encodeBin() 関数に対して UNICODE で入力データを渡す) |
\u or u+ | 無 | 1 | 1 |
sCOMURLEncode.HexCoding |
内容 |
16/10 進変換時のヘッダ文字(列)を設定します。 デフォルトは、NULL なので、Hex エンコーディングになります。 「%」を指定すれば、以降の処理は URL エンコーディングになり、 「=」を指定すれば、以降の処理は Quoted-printable エンコーディングになる。 「\」を指定すれば、以降の処理は LDAP サーチフィルタ・エスケープになる。 「&#」を指定すれば、以降の処理は 10進数の数値実体参照になる。 「&#x」を指定すれば、以降の処理は 16進数の数値実体参照になる。 |
引数 | 16/10 進変換時のヘッダ文字(列) |
戻り値 | なし |
IsError 値 | |
成功 | 0 |
失敗 | 負数 |
内容 |
16/10 進変換時のフッタ文字(列)を設定します。 デフォルトは、NULL なので、Hex エンコーディングになります。 「;」を指定すれば、数値実体参照のフッタ文字になる。 |
引数 | 16/10 進変換時のフッタ文字(列) |
戻り値 | なし |
IsError 値 | |
成功 | 0 |
失敗 | 負数 |
内容 | 進数の決定をする |
引数 | 進数の決定 0 : 16進数(2桁固定) 1 : 16進数(4桁固定[2Byte]) 2 : 10進数(4桁固定) 3 : 10進数(3桁固定) 4 : 10進数(非固定) |
戻り値 | なし |
IsError 値 | |
成功 | 0 |
失敗 | 負数 |
内容 |
半角スペースを変換するとして、「+」に変換するか、16進変換を行うか。 デフォルトは、「1」 |
引数 | 0 : 「+」に変換する 1 : 16 進変換をする |
戻り値 | なし |
IsError 値 | |
成功 | 0 |
失敗 | 負数 |
内容 |
16 進変換をしないバイト列を文字(列)で指定する。 デフォルトはヌル文字(列) つまり、総てのデータを 16 進変換を行う。 ver1.0.0.4 で修正したバグ対策より「0x00」は指定できません。 内部的には文字列として扱っているため、途中に「0x00」がある場合、そこまでのデータを用いることになっています。 |
引数 | 16 進変換を行わない文字列 |
戻り値 | なし |
IsError 値 | |
成功 | 0 |
失敗 | 負数 |
内容 |
16 進変換(エンコード)を行う。 |
引数 | エンコード対象の文字列 EncodeBin() の場合は、文字列という制限はない |
戻り値 | エンコードされた文字列 |
IsError 値 | |
成功 | 0 |
失敗 | 負数 |
内容 |
16 進変換(デコード)を行う。 |
引数 | デコード対象の文字列 |
戻り値 | デコードされた文字列 DecodeBin() の場合は、文字列とは限らない |
IsError 値 | |
成功 | 0 |
失敗 | 負数 |
内容 |
英大文字/英小文字/数字を返す |
引数 | なし |
戻り値 | 英大文字/英小文字/数字を返す。 つまり、 「abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789」が返る |
IsError 値 | |
成功 | 0 |
失敗 | 負数 まず、返る事はないだろう |
内容 |
入力ファイルからデータを読み取り、エンコード/デコードを行い結果を出力ファイルに出力する。 |
引数 |
入力ファイル : 入力ファイル名(絶対パスが無難) 出力ファイル : 出力ファイル名(絶対パスが無難) モード : 0 : エンコード 1 : デコード |
戻り値 | なし |
IsError 値 | |
成功 | 0 |
失敗 | 負数 |
内容 | 入力データの 2byte ごとに半角スペースを挿入して、一行が第二引数分になったら、Cr+Lf を挿入した文字列を戻す。 |
引数 |
(第一引数) : 入力データ : VARIANT 型で文字列を想定 (第二引数) : 一行のサイズ(指定しない場合は「49」が指定されたものとなる) |
戻り値 | 整形された文字列 |
IsError 値 | |
成功 | 0 以上の整形後のデータサイズ |
失敗 | 負数 |
内容 | 直前のメソッドが成功したかどうか。 |
引数 | なし |
戻り値 |
直前のメソッドが成功したかどうか 下記のエラー一覧を参照 |
#include "sURLEncode.h" |
メソッド一覧 |
---|
signed long Encode(unsigned char *,unsigned long,short,unsigned char *,unsigned char *) |
メイン処理は、EncodeEx() に引き継がれた 第一引数のメモリポインタから、第二引数で指定したサイズ分をエンコードする。 処理結果は、CSURLEncode 内の myMemOut ポインタが指すメモリ領域にコピーされる。 第三引数は半角スペースの変換モードです。 変換するとして、
第五引数は、16 進変換の前に付与する文字(列)(終端コードは「\0」)
|
signed long EncodeEx(unsigned char *,unsigned long,short,unsigned char *,unsigned char *,unsigned char *,short) |
Encode() と変わらないが、最後の二つ目の char がフッタ文字列。 最後のshort は
|
signed long Decode(unsigned char *,short mode,unsigned char *) |
メイン処理は、DecodeEx() に引き継がれた 第一引数の指すポインタ(終端コードは「\0」)を デコードする。 第二引数は半角スペースの変換モードです。 変換するとして、
|
signed long DecodeEx(unsigned char *,short mode,unsigned char *,unsigned char *,short) |
新設の最後の二つの引数の説明は、EncodeEx() と同じ |
signed long FileEncode(unsigned char *,unsigned char *,short,short,unsigned char *,unsigned char *) |
第一引数が指定するファイル名(終端コードは「\0」で絶対パスが無難)からデータを入力して、エンコード/デコード処理をする。 処理結果は、第二引数が指定するファイル名(終端コードは「\0」で絶対パスが無難)に出力する。 第三引数は、コーディングモードで、
第四引数は、半角スペースの変換モード、または「+」のデコード・モードです。 変換するとして、
第六引数は、16 進変換時に付与する文字列を指定する。 負数 : 何がしかのエラー |
signed long FileEncodeEx(unsigned char *,unsigned char *,short,short,unsigned char *,unsigned char *,unsigned char *,short) |
新設の最後の二つの引数の説明は、EncodeEx() と同じ |
unsigned char *GetMyMemOut(void) |
CSURLEncode クラス内の myMemOut ポインタを渡す。 |
unsigned char *CSURLEncode::GetChars(void) |
英大文字/英小文字/数字の文字配列の先頭ポインタを返す。 |
signed long PlasticHexData(unsigned char*,unsigned long,unsigned char**) |
入力データの 2byte ごとに半角スペースを挿入して、一行が第二引数分になったら、Cr+Lf を挿入した文字列を戻す。 第一引数には、文字列(配列の最後は「\0」)を想定している。 整形された文字列は、第三引数に返る。 戻り値は、0 以上の整形されたデータのサイズ(正常終了)、 エラー時は、負数が返る。 |
エラー一覧 sCOMURLEncode.dll,sURLEncode.dll 共通 |
|
---|---|
0 以上 | 正常終了 |
-1 | 予期しないエラーです |
-2 | メモリが確保できませんでした |
-3 | ファイルがオープンできません (ファイル読み込みエラー) |
-4 | ファイル内容が読み込めませんでした (ファイル読み込みエラー) |
-5 | ファイルがオープンできません (ファイル書き込みエラー) |
-6 | ファイルが書き込めませんでした (ファイル書き込みエラー) |
-7 | 引数の指定が間違っています |
-100 | デコードすべき文字列が 4 の倍数ではない (BASE64 化された文字列の長さは、4 の倍数です) |
-101 | BASE64 デコードでは正しくない文字列である |
-200 | キーがセットされていない セットするキーが空文字はダメです |
-201 | 引数で指定された先にデータがありませんでした |
-202 | BlowFish 解読時のエラーです |
-300 | データサイズが 0 である |