Sample code for 30+ languages & platforms
PowerBuilder

HTTP Download any Type of File (binary or text)

See more HTTP Examples

The Download method can download any file type, whether binary (e.g., .zip, .pdf) or text (.xml, .txt), without distinction. It streams the file byte-for-byte from the web server exactly as received. This same process applies to web pages: providing a URL typically viewed in a browser downloads the server's delivered HTML to a file.

Chilkat PowerBuilder Downloads

PowerBuilder
integer li_rc
integer li_Success
oleobject loo_Http
string ls_LocalFilePath
integer li_StatusCode

li_Success = 0

// This example requires the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.

loo_Http = create oleobject
li_rc = loo_Http.ConnectToNewObject("Chilkat.Http")
if li_rc < 0 then
    destroy loo_Http
    MessageBox("Error","Connecting to COM object failed")
    return
end if
loo_Http.KeepResponseBody = 1

// Download a .zip
ls_LocalFilePath = "/temp/hamlet.zip"
li_Success = loo_Http.Download("https://www.chilkatsoft.com/hamlet.zip",ls_LocalFilePath)
li_StatusCode = loo_Http.LastStatus
if li_Success = 0 then
    if li_StatusCode = 0 then
        // Unable to either send the request or get the response.
        Write-Debug loo_Http.LastErrorText
    else
        // We got a response, but the status code was not in the 200s
        Write-Debug "Response status code: " + string(li_StatusCode)
        // Examine the response body.
        Write-Debug "Response body:"
        Write-Debug loo_Http.LastResponseBody
    end if

    Write-Debug "Download failed."

else
    Write-Debug "Download success, response status = " + string(li_StatusCode)
end if

// Download an XML file:
ls_LocalFilePath = "/temp/hamlet.xml"
li_Success = loo_Http.Download("https://www.chilkatsoft.com/hamlet.xml",ls_LocalFilePath)
// ...
// Check for errors in the same way as shown above..
// ...

Write-Debug "OK!"


destroy loo_Http