diff options
Diffstat (limited to 'packages/fcl-base/examples/b64dec.pp')
-rw-r--r-- | packages/fcl-base/examples/b64dec.pp | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/packages/fcl-base/examples/b64dec.pp b/packages/fcl-base/examples/b64dec.pp new file mode 100644 index 0000000000..c7aa144e49 --- /dev/null +++ b/packages/fcl-base/examples/b64dec.pp @@ -0,0 +1,29 @@ + +// base64-decodes data from StdIn and writes the output to StdOut +// (c) 1999 Sebastian Guenther + +{$MODE objfpc} + +program b64dec; +uses classes, base64, sysutils; +var + b64decoder: TBase64DecodingStream; + InputStream: TStream; + IsEnd: Boolean; +begin + + InputStream := THandleStream.Create(StdInputHandle); + + b64decoder := TBase64DecodingStream.Create(InputStream); + + IsEnd := False; + while not IsEnd do + try + Write(Chr(b64decoder.ReadByte)); + except + on e: EStreamError do IsEnd := True; + end; + + b64decoder.Free; + InputStream.Free; +end. |