Lua中使用zlib库压缩字符串

可以看一下我的Github项目,使用项目中的lua_zlib.h文件压缩lua字符串。

  • 使用

我使用的开发环境是cocos2d-x + lua开发,以我的项目为例,
将lua_zlib.h文件加入项目中,在入口文件中包含该头文件并注册以便在lua中使用,注册如下:

luaL_requiref_(L, "zlib", luaopen_zlib, 1);

然后lua中就可以使用如下:

local zip=require("zlib")     
local v,mv,pv=zip.version()
print(v .. "  " .. mv .. "  " .. pv)
local compress=zip.deflate()
local uncompress=zip.inflate()

-- 压缩字符串
local deflated, eof, bytes_in,bytes_out =compress("asdasdasdasdasdasdasdasdasd", 'finish')
print(deflated)
print(eof)
print(bytes_in)
print(bytes_out)

-- 解压字符串
local uss,ret,getin,getout=uncompress(deflated)    
print(uss)
print(ret)
print(getin)
print(getout)

'finish'为压缩选项,有 "none", "sync", "full", "finish", NULL,几种类型。

你可能感兴趣的:(Lua中使用zlib库压缩字符串)