DataFlex
DataFlex
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 DataFlex Downloads
Use ChilkatAx-win32.pkg
Procedure Test
Boolean iSuccess
Handle hoZip
Variant vSb
Handle hoSb
String sTemp1
Move False To iSuccess
Get Create (RefClass(cComChilkatZip)) To hoZip
If (Not(IsComObjectCreated(hoZip))) Begin
Send CreateComObject of hoZip
End
Get ComNewZip Of hoZip "stringBuilderData.zip" To iSuccess
If (iSuccess = False) Begin
Get ComLastErrorText Of hoZip To sTemp1
Showln sTemp1
Procedure_Return
End
// Create a StringBuilder containing text data.
Get Create (RefClass(cComChilkatStringBuilder)) To hoSb
If (Not(IsComObjectCreated(hoSb))) Begin
Send CreateComObject of hoSb
End
Get ComAppendLine Of hoSb "Line 1: Hello World!" True To iSuccess
Get ComAppendLine Of hoSb "Line 2: This text came from a StringBuilder." True To iSuccess
// Add the StringBuilder contents as a UTF-8 text file
// stored in the ZIP archive as "docs/readme.txt".
Get pvComObject of hoSb to vSb
Get ComAddSb Of hoZip "docs/readme.txt" vSb "utf-8" To iSuccess
If (iSuccess = False) Begin
Get ComLastErrorText Of hoZip To sTemp1
Showln sTemp1
Procedure_Return
End
// Write the ZIP archive to disk and close it.
Get ComWriteZipAndClose Of hoZip To iSuccess
If (iSuccess = False) Begin
Get ComLastErrorText Of hoZip To sTemp1
Showln sTemp1
Procedure_Return
End
Showln "ZIP archive created successfully."
End_Procedure