Sample code for 30+ languages & platforms
PowerBuilder

Add Text from a StringBuilder to a ZIP Using AddSb

See more Zip Examples

This example demonstrates how to use the AddSb method to add text from a StringBuilder object as a file entry within a ZIP archive.

The text is converted to bytes using the specified character encoding before being stored in the ZIP archive.

This method is useful for dynamically generating text files entirely in memory without creating temporary files on disk.

Chilkat PowerBuilder Downloads

PowerBuilder
integer li_rc
integer li_Success
oleobject loo_Zip
oleobject loo_Sb

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("stringBuilderData.zip")
if li_Success = 0 then
    Write-Debug loo_Zip.LastErrorText
    destroy loo_Zip
    return
end if

// Create a StringBuilder containing text data.
loo_Sb = create oleobject
li_rc = loo_Sb.ConnectToNewObject("Chilkat.StringBuilder")

loo_Sb.AppendLine("Line 1: Hello World!",1)
loo_Sb.AppendLine("Line 2: This text came from a StringBuilder.",1)

// Add the StringBuilder contents as a UTF-8 text file
// stored in the ZIP archive as "docs/readme.txt".
li_Success = loo_Zip.AddSb("docs/readme.txt",loo_Sb,"utf-8")
if li_Success = 0 then
    Write-Debug loo_Zip.LastErrorText
    destroy loo_Zip
    destroy loo_Sb
    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
    destroy loo_Sb
    return
end if

Write-Debug "ZIP archive created successfully."


destroy loo_Zip
destroy loo_Sb