1
1
Fork 0
mirror of https://github.com/DualBrain/QB64.git synced 2023-11-19 13:10:13 +00:00
QB64-website/wiki/_INFLATE$.md
2022-12-24 21:14:48 -06:00

1.5 KiB

The _INFLATE$ function decompresses a STRING compressed by the _DEFLATE$ function.

Syntax

result$ = _INFLATE$(stringToDecompress$[, originalSize&])

Description

  • result$ will contain the original version of stringToDecompress$.
  • Optional parameter originalSize& can be used if the original size of the uncompressed data is known beforehand, which makes the decompression routine run more efficiently.
    • If unspecified, decompression still works as expected, but may use more steps and need to allocate more memory internally.

Availability

  • Version 1.4 and up.

Example(s)

Compressing a long string of text.


a$ = "The quick brown fox jumps over the lazy dog. "
PRINT "Original string (a$): "; a$
FOR i = 1 TO 15
    a$ = a$ + a$
NEXT
 
PRINT "After concatenating it into itself several times, LEN(a$) ="; LEN(a$)
 
b$ = _DEFLATE$(a$)
PRINT "After using _DEFLATE$ to compress it, LEN ="; LEN(b$)
PRINT USING "(compressed size is #.###% of the original)"; ((LEN(b$) * 100) / LEN(a$))
c$ = _INFLATE$(b$)
PRINT "After using _INFLATE$ to decompress it, LEN ="; LEN(c$)
 


Original string (a$): The quick brown fox jumps over the lazy dog
After concatenating it into itself several times, LEN(a$) = 1474560
After using _DEFLATE$ to compress it, LEN = 4335
(compressed size is 0.295% of the original)
After using _INFLATE$ to decompress it, LEN = 1474560

See Also