Skip to content
/ lib7zres Public

The lib7zres project is a library that reads 7z compressed files as resource packages.

License

Notifications You must be signed in to change notification settings

jhuix/lib7zres

Repository files navigation

Lib7zres

lib7zres 工程是一读取由7z压缩文件做为资源包的库。

7z-LZMA SDK

7z文件分析和解压缩采用 7Zip 的解压缩LZMA SDK开源版本源码。

Example

1. 获取一个test.7z资源包里的名为"skin\ui\index.html"的内容至缓存中:

JRES::IRes* jres = SEVENZRES::Create7zRes(true);
if (jres) {
    if (jres->Open("test.7z", '\\')) {
        char* buf = nullptr;
        size_t bufsize = 0;
        void* res = jres->LoadResource("skin\\ui\\index.html", &buf, bufsize);
        if (res) {
            //TO DO USE data of "buf"
            rarres->FreeResource(res);
        }
    }
    jres->Release();
}

2. 在windows平台下,获取一个test.7z"skin/img/caotion.png"的内容至IStream中:

JRES::IRes* jres = SEVENZRES::Create7zRes(true);
if (jres) {
    if (jres->Open("test.7z", 0)) {
        IStream* res = jres->LoadResource("skin/img/caotion.png");
        if (res) {
            //TO DO USE IStream interface methods of "res";
            //For examples: <Seek>|<Read>|<Write> methods etc.
            res->Release();
        }
    }
    jres->Release();
}

License

MIT

Copyright (c) 2018-present, Jhuix (Hui Jin)

About

The lib7zres project is a library that reads 7z compressed files as resource packages.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published