Sample code for 30+ languages & platforms
PowerBuilder

Add Text Files to a ZIP Using AddString

See more Zip Examples

This example demonstrates how to use the AddString method to add multiple text files directly from string variables into a ZIP archive.

Each string is converted to bytes using the specified character encoding and stored as a separate file entry within the ZIP archive.

This method is useful for dynamically generating small text files such as configuration files, reports, JSON documents, XML, or log files entirely in memory.

Chilkat PowerBuilder Downloads

PowerBuilder
integer li_rc
integer li_Success
oleobject loo_Zip
string ls_ReadmeText
string ls_JsonText
string ls_XmlText

li_Success = 0

loo_Zip = create oleobject
li_rc = loo_Zip.ConnectToNewObject("Chilkat.Zip")
if li_rc < 0 then
    destroy loo_Zip
    MessageBox("Error","Connecting to COM object failed")
    return
end if

li_Success = loo_Zip.NewZip("stringEntries.zip")
if li_Success = 0 then
    Write-Debug loo_Zip.LastErrorText
    destroy loo_Zip
    return
end if

// Add a README text file.
ls_ReadmeText = "This ZIP archive was created using AddString."

li_Success = loo_Zip.AddString("docs/readme.txt",ls_ReadmeText,"utf-8")
if li_Success = 0 then
    Write-Debug loo_Zip.LastErrorText
    destroy loo_Zip
    return
end if

// Add a JSON configuration file.
ls_JsonText = "{ ~"server~": ~"example.com~", ~"port~": 443 }"

li_Success = loo_Zip.AddString("config/settings.json",ls_JsonText,"utf-8")
if li_Success = 0 then
    Write-Debug loo_Zip.LastErrorText
    destroy loo_Zip
    return
end if

// Add a small XML document.
ls_XmlText = "<root><status>OK</status></root>"

li_Success = loo_Zip.AddString("xml/status.xml",ls_XmlText,"utf-8")
if li_Success = 0 then
    Write-Debug loo_Zip.LastErrorText
    destroy loo_Zip
    return
end if

// Write the ZIP archive to disk and close it.
li_Success = loo_Zip.WriteZipAndClose()
if li_Success = 0 then
    Write-Debug loo_Zip.LastErrorText
    destroy loo_Zip
    return
end if

Write-Debug "ZIP archive created successfully."


destroy loo_Zip