#include <dwc.h>
int DWC_Base64Decode(const char *src,
const unsigned long srclen,
char *dst,
const unsigned long dstlen);| src | 変換元Base64文字列へのポインタ |
| srclen | 変換元Base64文字列の長さ |
| dst | 変換後のデータを格納するバッファへのポインタ |
| dstlen | 変換後のデータを格納するバッファのバイトサイズ |
| -1 | 変換失敗。 変換後のデータサイズの理論値が引数dstlenの値を越えているか、引数srclenが4の倍数でありません。 |
| それ以外 | 変換後のデータのバイトサイズ |
srcで指定されたBase64文字列をデコードし、データを出力します。
dstにNULLを指定すれば、実際には変換は行わず、Base64文字列に異常はないものとして計算された変換後のデータサイズを返り値として返します。
実際の変換はこのデータサイズの理論値を元に行われるため、Base64文字列に異常があっても変換後のデータサイズがこの理論値を越えることはありません。
本関数は特殊なBase64を使用しており、通常使用される'+'、'/'、'='がそれぞれ'.'、'-'、'*'に置き換えられています。
本関数でデコードできるのは、DWC_Base64Encode関数を用いてエンコードしたBase64文字列になります。
5.1pr2より前の変更履歴はこちら