#ifndef __HGBASE64_H__ #define __HGBASE64_H__ #include "HGDef.h" #include "HGBaseErr.h" /* Base64编码 * 参数: * 1) originalData: in, 原始数据地址 * 2) originalSize: in, 原始数据长度 * 3) base64Data: out, base64地址 * 4) base64Size: out, 编码后base64长度 * 说明: * 1) 该函数的调用需要分两次,第一次base64Data为NULL,base64Size不为NULL, 获取编码后base64长度 * 2) 分配足够的内存后,然后调用第二次,此时base64Data为分配的地址 */ HGEXPORT HGResult HGAPI HGBase_Base64Encode(const HGByte* originalData, HGSize originalSize, HGByte* base64Data, HGSize* base64Size); /* Base64解码 * 参数: * 1) base64Data: in, base64地址 * 2) base64Size: in, base64长度 * 3) originalData: out, 原始数据地址 * 4) originalSize: out, 解码后原始数据长度 * 说明: * 1) 该函数的调用需要分两次,第一次originalData为NULL,originalSize不为NULL, 获取解码后原始数据长度 * 2) 分配足够的内存后,然后调用第二次,此时originalData为分配的地址 * 3) base64Data中的数据必须是标准Base64字符, 不能有其他字符,比如\r或\n等 */ HGEXPORT HGResult HGAPI HGBase_Base64Decode(const HGByte* base64Data, HGSize base64Size, HGByte* originalData, HGSize* originalSize); #endif /* __HGBASE64_H__ */