Chilkat HOME .NET Core C# Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi ActiveX Delphi DLL Go Java Lianja Mono C# Node.js Objective-C PHP ActiveX PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(PowerBuilder) Decode Base64 Image String (GIF, JPG, etc.) and Save to FileI have an XML response that includes a base 64 encoded image string (UPS label). It's a huge string and I need to save it as a gif file on my users pc. This example shows how to do it..
integer li_rc oleobject loo_Bd integer li_Success string x oleobject loo_Xml string ls_GifBase64 loo_Bd = create oleobject // Use "Chilkat_9_5_0.BinData" for versions of Chilkat < 10.0.0 li_rc = loo_Bd.ConnectToNewObject("Chilkat.BinData") if li_rc < 0 then destroy loo_Bd MessageBox("Error","Connecting to COM object failed") return end if // I created an extra-small GIF image for this example.. li_Success = loo_Bd.LoadFile("qa_data/gif/xsmall.gif") if li_Success <> 1 then Write-Debug "Failed to load GIF image file." destroy loo_Bd return end if // Show GIF bytes as base64: Write-Debug loo_Bd.GetEncoded("base64") // This particular GIF in base64 is this: // R0lGODlhBQAFAMQAAAAAAP////z8/PHx8evr6+jo6OHh4d7e3sPDw8LCwpqamo2NjWxsbGRkZFpaWk1NTUtLS0hISCwsLCQkJP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAEAABQALAAAAAAFAAUAAAUTYCAYQUBAU1lI0TIgztE8jFImIQA7 // Let's begin with an XML string: x = "<abc><def>R0lGODlhBQAFAMQAAAAAAP////z8/PHx8evr6+jo6OHh4d7e3sPDw8LCwpqamo2NjWxsbGRkZFpaWk1NTUtLS0hISCwsLCQkJP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAEAABQALAAAAAAFAAUAAAUTYCAYQUBAU1lI0TIgztE8jFImIQA7</def></abc>" loo_Xml = create oleobject // Use "Chilkat_9_5_0.Xml" for versions of Chilkat < 10.0.0 li_rc = loo_Xml.ConnectToNewObject("Chilkat.Xml") li_Success = loo_Xml.LoadXml(x) // Get the base64 string: ls_GifBase64 = loo_Xml.GetChildContent("def") Write-Debug ls_GifBase64 // Load bd with the base64 decoded bytes. loo_Bd.Clear() loo_Bd.AppendEncoded(ls_GifBase64,"base64") // Save to a GIF file. li_Success = loo_Bd.WriteFile("qa_output/xsmall.gif") destroy loo_Bd destroy loo_Xml |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.