|
GZIP_压缩_MJ | 字节集 | |
|
data | 字节集 | | | |
windowBits | 整数型 | | | | chunkSize | 整数型 | | | |
变量名 | 类 型 | 静态 | 数组 | 备 注 |
strm | z_stream | | |
out | 字节集 | | |
temp | 字节集 | | |
err | 整数型 | | |
字节集 | 快速字节集类YZC | | |
如果真 (是否为空 (chunkSize
))

chunkSize = 4096
如果真 (是否为空 (windowBits
))

windowBits = 31

如果真 (DeflateInit (strm, windowBits
) ≠
#Z_ERROR_OK )
返回 (out
)temp = 取空白字节集 (chunkSize)strm.next_in =
取变量数据地址 (data
)strm.avail_in =
取字节集长度 (data
)strm.total_in = 0
strm.next_out =
取变量数据地址 (temp
)strm.avail_out =
取字节集长度 (temp
)strm.total_out = 0
err =
Deflate (strm,
#Z_FLUSH_NO_FLUSH )
如果真 (err =
#Z_ERROR_OK )
字节集.
添加 (取字节集左边 (temp, strm.total_out
))

循环判断首 ()

strm.next_out =
取变量数据地址 (temp
)

strm.avail_out =
取字节集长度 (temp
)

strm.total_out = 0


err =
Deflate (strm,
#Z_FLUSH_PARTIAL_FLUSH )

如果真 (err =
#Z_ERROR_OK )


判断 (strm.total_out ≠ 0
)



字节集.
添加 (取字节集左边 (temp, strm.total_out
))



跳出循环 ()







循环判断尾 (err =
#Z_ERROR_OK )DeflateEnd (strm)返回 (字节集.
取字节集 (,
))
|
GZIP_解压_MJ | 字节集 | |
|
data | 字节集 | | | |
windowBits | 整数型 | | | | chunkSize | 整数型 | | | |
变量名 | 类 型 | 静态 | 数组 | 备 注 |
strm | z_stream | | |
out | 字节集 | | |
temp | 字节集 | | |
err | 整数型 | | |
字节集 | 快速字节集类YZC | | |
如果真 (是否为空 (chunkSize
))

chunkSize = 4096
如果真 (是否为空 (windowBits
))

windowBits = 31
如果真 (InflateInit (strm, windowBits
) ≠
#Z_ERROR_OK )
返回 (out
)temp = 取空白字节集 (chunkSize)strm.next_in =
取变量数据地址 (data
)strm.avail_in =
取字节集长度 (data
)strm.total_in = 0
循环判断首 ()
strm.next_out =
取变量数据地址 (temp
)
strm.avail_out =
取字节集长度 (temp
)
strm.total_out = 0

err =
Inflate (strm,
#Z_FLUSH_NO_FLUSH )
判断 (err =
#Z_ERROR_OK )

判断 (strm.total_out ≠ 0
)


字节集.
添加 (取字节集左边 (temp, strm.total_out
))


跳出循环 ()



判断 (err =
#Z_ERROR_STREAM_END )

err =
Inflate (strm,
#Z_FLUSH_PARTIAL_FLUSH )

如果真 (strm.total_out ≠ 0
)


字节集.
添加 (取字节集左边 (temp, strm.total_out
))

跳出循环 ()





循环判断尾 (err =
#Z_ERROR_OK )InflateEnd (strm
)返回 (字节集.
取字节集 (,
))