Base64Decoder()

Syntax

Result = Base64Decoder(Input$, *OutputBuffer, OutputSize)
Description
Decodes the specified Base64 encoded string.

Parameters

Input$ A string containing the encoded data.
*OutputBuffer The output buffer where the plain data will be copied.
OutputSize The size of the output buffer.

The output buffer can be up to 25% smaller than the input buffer, with a minimum size of 64 bytes. It's recommended to get a slightly larger buffer, like 20% smaller to avoid overflows.

Return value

Returns the length of the decoded data in bytes.

Example

  String$ = "This is a test string!"
  
  ; Encoding an Ascii string
  *Text = Ascii(String$)
  Encoded$ = Base64Encoder(*Text, StringByteLength(String$, #PB_Ascii))
  Debug "Encoded: " + Encoded$
  
  *DecodedBuffer = AllocateMemory(1024)
  Base64Decoder(Encoded$, *DecodedBuffer, 1024)
  Debug "Decoded: '" + PeekS(*DecodedBuffer, -1, #PB_Ascii) + "'"
  
  FreeMemory(*Text)
  FreeMemory(*DecodedBuffer)

See Also

Base64Encoder()

Supported OS

All

<- AddFingerprintBuffer() - Cipher Index - Base64DecoderBuffer() ->