PowerBuilder
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
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