Sample code for 30+ languages & platforms
C Requires Chilkat v11.0.0+

Transition from Zip.AppendDataEncoded to Zip.AddEncoded

Provides instructions for replacing deprecated AppendDataEncoded method calls with AddEncoded.

Chilkat C Downloads

C
#include <C_CkZip.h>
#include <C_CkZipEntry.h>

void ChilkatSample(void)
    {
    BOOL success;
    HCkZip zip;
    const char *pathInZip;
    const char *encoding;
    const char *encData;
    HCkZipEntry entryObj;
    HCkZipEntry ze;
    int index;

    success = FALSE;

    zip = CkZip_Create();

    //  ...
    //  ...
    pathInZip = "example.dat";
    encoding = "base64";
    encData = "... BASE64 DATA ...";

    //  ------------------------------------------------------------------------
    //  The AppendDataEncoded method is deprecated:

    entryObj = CkZip_AppendDataEncoded(zip,pathInZip,encoding,encData);
    if (CkZip_getLastMethodSuccess(zip) == FALSE) {
        printf("%s\n",CkZip_lastErrorText(zip));
        CkZip_Dispose(zip);
        return;
    }

    //  ...
    //  ...

    CkZipEntry_Dispose(entryObj);

    //  ------------------------------------------------------------------------
    //  Do the equivalent using AddEncoded.

    //  Instead of returning the zip entry object, we just return success/failure.
    success = CkZip_AddEncoded(zip,pathInZip,encoding,encData);
    if (success == FALSE) {
        printf("%s\n",CkZip_lastErrorText(zip));
        CkZip_Dispose(zip);
        return;
    }

    //  Do the following if you need the zip entry object for what was just appended.
    //  The newly appended entry is the last one.
    ze = CkZipEntry_Create();
    index = CkZip_getNumEntries(zip) - 1;
    CkZip_EntryAt(zip,index,ze);


    CkZip_Dispose(zip);
    CkZipEntry_Dispose(ze);

    }