![]() |
Chilkat HOME Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi DLL Go Java Node.js Objective-C PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(PowerShell) Transition from BeginCompressStringENC to FirstChunk/LastChunkProvides instructions for replacing deprecated BeginCompressStringENC method calls with using FirstChunk/LastChunk properties. Note: This example requires Chilkat v11.0.0 or greater.
Add-Type -Path "C:\chilkat\ChilkatDotNet47-x64\ChilkatDotNet47.dll" $success = $false # This example assumes the Chilkat API to have been previously unlocked. # See Global Unlock Sample for sample code. $sbCompressedBase64 = New-Object Chilkat.StringBuilder $compress = New-Object Chilkat.Compression $compress.Algorithm = "deflate" $compress.Charset = "utf-8" $compress.EncodingMode = "base64" $sbIndex = New-Object Chilkat.StringBuilder # ---------------------------------------------------------------------------------- # This is the deprecated way of compressing in chunks using Begin/More/End methods.. # ---------------------------------------------------------------------------------- for ($i = 0; $i -le 24; $i++) { # Note: It is possible (and normal) for a BeginCompress* or MoreCompress* method to return # an empty string (or 0 bytes). When this happens, the input data is not lost. It will be flushed # in a subsequent call. $sbIndex.Clear() $sbIndex.AppendInt($i) if ($i -eq 0) { $sbCompressedBase64.Append($compress.BeginCompressStringENC($sbIndex.GetAsString())) } else { $sbCompressedBase64.Append($compress.MoreCompressStringENC($sbIndex.GetAsString())) } $sbCompressedBase64.Append($compress.MoreCompressStringENC(": This is a line of data to be compressed...`r`n")) } # Flush any remaining output. $sbCompressedBase64.Append($compress.EndCompressStringENC()) $("The base64 encoded compressed text:") $($sbCompressedBase64.GetAsString()) # Decompress in one call: $originalText = $compress.DecompressStringENC($sbCompressedBase64.GetAsString()) $($originalText) # ---------------------------------------------------------------------------------- # This is new way of compressing in chunks using FirstChunk and LastChunk properties # ---------------------------------------------------------------------------------- $sbCompressedBase64.Clear() $compress.FirstChunk = $true $compress.LastChunk = $false $bdCompressed = New-Object Chilkat.BinData $sbUncompressedChunk = New-Object Chilkat.StringBuilder for ($i = 0; $i -le 24; $i++) { if ($i -eq 24) { $compress.LastChunk = $true } $sbUncompressedChunk.Clear() $sbUncompressedChunk.AppendInt($i) $sbUncompressedChunk.Append(": This is a line of data to be compressed...`r`n") $compress.CompressSb($sbUncompressedChunk,$bdCompressed) $compress.FirstChunk = $false } $("The base64 encoded compressed text:") $($bdCompressed.GetEncoded("base64")) # Decompress in one call: $originalText = $compress.DecompressStringENC($bdCompressed.GetEncoded("base64")) $($originalText) |
© 2000-2025 Chilkat Software, Inc. All Rights Reserved.