Sample code for 30+ languages & platforms
Unicode C++

Zip Append StringBuilder

See more Zip Examples

Append the contents of a Chilkat StringBuilder object to a .zip.

Chilkat Unicode C++ Downloads

Unicode C++
#include <CkZipW.h>
#include <CkStringBuilderW.h>

void ChilkatSample(void)
    {
    bool success = false;

    //  This example requires the Chilkat API to have been previously unlocked.
    //  See Global Unlock Sample for sample code.

    CkZipW zip;
    const wchar_t *zipPath = L"c:/temp/qa_output/out.zip";

    zip.NewZip(zipPath);

    CkStringBuilderW sb;
    int i = 0;
    while (i < 100) {
        sb.AppendLine(L"This is a test",true);
        i = i + 1;
    }

    zip.AddSb(L"this_is_a_test.txt",sb,L"utf-8");

    success = zip.WriteZipAndClose();
    if (success == false) {
        wprintf(L"%s\n",zip.lastErrorText());
        return;
    }

    wprintf(L"Success 1.\n");

    //  Perhaps you want to add a file to an existing .zip
    CkZipW zip2;
    //  Open the .zip we just wrote..
    success = zip2.OpenZip(zipPath);

    sb.Clear();
    i = 0;
    while (i < 100) {
        sb.AppendLine(L"This is a test 2",true);
        i = i + 1;
    }

    zip2.AddSb(L"this_is_a_test_2.txt",sb,L"utf-8");

    const wchar_t *zipPath2 = L"c:/temp/qa_output/out2.zip";
    zip2.put_FileName(zipPath2);
    success = zip2.WriteZipAndClose();
    if (success == false) {
        wprintf(L"%s\n",zip2.lastErrorText());
        return;
    }

    wprintf(L"Success 2.\n");
    }