Sample code for 30+ languages & platforms
Swift

Create a Zip Entirely in Memory

See more Zip Examples

Demonstrates how to create a .zip from in-memory byte data and strings, and to write the .zip to an in-memory image.

Chilkat Swift Downloads

Swift

func chilkatTest() {
    var success: Bool = false

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

    let crypt = CkoCrypt2()!
    let zip = CkoZip()!

    success = zip.newZip(zipPath: "test.zip")
    if success == false {
        print("\(zip.lastErrorText!)")
        return
    }

    // Add the bytes 0x00 0x01 0x02 0x03 ... 0x0F as a file in the .zip
    let bd = CkoBinData()!
    bd.appendEncoded(encData: "000102030405060708090A0B0C0D0E0F", encoding: "hex")
    zip.addBd(pathInZip: "binaryData.dat", bd: bd)

    // Add the string "Hello World!" to the .zip
    zip.addString(pathInZip: "helloWorld.txt", content: "Hello World!", charset: "utf-8")

    var zipFileInMemory: NSData
    zipFileInMemory = zip.writeToMemory()

    // We could save these files to a file, and it is a valid .zip
    let fac = CkoFileAccess()!
    success = fac.writeEntireFile(path: "test.zip", fileData: zipFileInMemory)
    if success == false {
        print("\(fac.lastErrorText!)")
        return
    }

    print("Zip Created!")

}