Title: Base64

        Is this OK:

CString cEncodedFile;
XSCryptCryptoBase64 b64;
b64.encodeInit();
CFile f;
f.Open(cXMLFile.GetBuffer(999), CFile::modeRead);
int outLen = 10 * 1024 * 4/3 + 4;
BYTE *input = new BYTE[10 * 1024];
BYTE *output = new BYTE[outLen];
int inputSz = f.Read(input, 10 * 1024); int outputSz = 0;

while (inputSz > 0) {
        outputSz = b64.encode(input, inputSz, output, outLen );
        CString tmp = CString((char*) output, outputSz);
        cEncodedFile += tmp;
        inputSz = f.Read(input, 10 * 1024);
}

outputSz = b64.encodeFinish(output, outLen - outputSz);
//write_to_wherever(output, outputSz);
CString tmp = CString((char*) output, outputSz);
cEncodedFile += tmp;

I'm missing 1K at the end. :(

Reply via email to