INFLATE$: Difference between revisions

From QB64 Phoenix Edition Wiki
Jump to navigation Jump to search
No edit summary
No edit summary
 
(One intermediate revision by the same user not shown)
Line 13: Line 13:




==Availability==
{{PageAvailability}}
* '''Version 1.4 and up'''.
* '''Version 1.4 and up'''.


Line 41: Line 41:
After using _INFLATE$ to decompress it, LEN = 1474560
After using _INFLATE$ to decompress it, LEN = 1474560
{{OutputEnd}}
{{OutputEnd}}


{{PageSeeAlso}}
{{PageSeeAlso}}

Latest revision as of 00:42, 29 January 2023

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.


Examples

Example 1: 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



Navigation:
Main Page with Articles and Tutorials
Keyword Reference - Alphabetical
Keyword Reference - By usage
Report a broken link