问题标签 [libzip]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - 查找文件名索引的libzip函数不起作用c ++
我今天开始学习 libzip 一切都很好,只是我无法让 zip_name_locate 工作,而且我找不到任何解释它的教程/示例/文档(文档确实有,但我无法得到它工作)。文档 1,文档 2(我无法让其中任何一个工作,文档 2 页面也有一些显然没有在我的范围内声明的枚举)
因此,首先,我的 zip 存档可以正确打开,因为我可以向其中替换和添加文件。我有显示索引路径的终端输出(来自 zip_get_name 函数)。
存档文件数:3
dummy/
dummy/dummy1/
dummy/dummy1/dummytxt
无论我尝试查找其中哪一个的索引,我总是得到“dummy/”的索引,即 0,我还尝试了所有不同的枚举(ZIP_FL_COMPRESSED、ZIP_FL_ENCRYPTED、ZIP_FL_NOCASE、ZIP_FL_NODIR、ZIP_FL_RECOMPRESS、ZIP_FL_UNCHANGED 和0)。
(这个“dummy/dummy1/”返回 0,根据 zip_get_name 是“dummy/”)
如果有任何帮助,我将不胜感激。
build - 如何构建 libzip 库?
尝试在 Windows 10 x64 上构建它时遇到问题。
我的环境是
我所做的是在libzip 站点下载项目,打开 CLion IDE(最新版本)并尝试编译。
整个构建过程有错误,可以在链接中找到。 http://pastebin.com/KTPtm5z3
许多未声明的变量显示为错误:
是什么导致了这个问题,为什么?
我可以在此存储库镜像 repo libzip v0.9中毫无问题地编译库版本 libzip ,但我想要最新版本的 libzip。
c++ - libzip 中的符号链接
我在 Linux 的 c++ 应用程序中使用 libzip,它需要能够压缩/解压缩包含符号链接的目录。我想添加链接本身而不关注它。使用 readlink() 读取链接并将其添加到 zip 存档中会在使用 unzip 解压缩时生成一个无意义的标准文件。
解决方案不需要是可移植的,它只会在Linux下使用。linux zip 命令有一个 --symlinks 标志,所以 zip 标准应该支持它。系统调用不是一个真正的选择,文件数量非常大,这使得应用程序非常慢。
是否可以使用 libzip 添加符号链接,以及如何添加?
谢谢,桑德
linux - 了解 libzip 的工作原理
我今天开始使用 libzip 库。但我不明白 libzip 的工作原理。
我的重点是将包含所有文件和目录的目录压缩到一个 zip 文件中。
因此,我从 开始zip_open()
,然后读取目录内容并将所有目录添加zip_dir_add()
到存档中。之后,我关闭了 zip 文件zip_close()
。一切都很好。下一步应该是将所有文件添加到存档中
zip_file_add()
。但它不起作用。关闭文件的最后一步失败。
好的,我忘了创建一个 zip_source 来完成这项工作。我在前一行添加了一条语句来获取此来源(zip_source_file()
)。但它仍然不起作用。
我的想法有什么问题?我还必须fopen()
和fclose()
文件系统上的文件吗?
zip_source_file() 和 zip_source_filep() 有什么区别?
c++ - zip_open 给出未知错误
我正在使用 libzip,但我什至无法使用它。我想创建一个新的 zip 文件。
给我这个错误代码:-858993460
我编译了 zlib,然后自己成功地编译了 libzip(因为我没有收到错误),以便在 Visual Studio 中进行调试和发布。我按照此链接的说明进行操作。
我想念什么?
php - 编译php7.0.1时找不到zipconf.h
我安装了 libzip-1.0.1,当我在安装 php 的 make 阶段时,它显示一个错误,说 zip.h 找不到 zipconf.h。实际上,libzip-1.0.1 有 zipconf.h,但与 zip.h 不在同一个目录下。它位于 /libzip-1.0.1/lib/ziplib/include 下。
所以我尝试将 zipconf.h 复制到 zip.h 所在的 libzip-1.0.1/include 中,或者更改 zip.h 文件。在zip.h中,我把#include<zipconf.h>改成#include<DIR/zipconf.h>,DIR就是zipconf.h的路径。
但是它们中的任何一个都有帮助,并且在我复制 zipconf.h 或更改 zip.h 文件后,另一个错误“找不到 zip.h”在制作阶段出现。
我该如何解决这个问题,并使用 libzip 编译 php。我在配置时使用标志 --with-libzip=DIR
c++ - 在 Mac 上编译 libzip:架构 x86_64 的未定义符号
我一直在学习 C++,并决定尝试在存档文件(例如 Word)上使用 libzip 创建一个简单的文件阅读器。
我最近使用 brew 在我的 Macbook 上安装了 libzip,但每当我尝试编译使用 libzip 的程序时,我似乎都会遇到以下问题:
我用来编译的命令:
主.cpp:
bzip2 - 如何在 C++ 中使用 libbz2 库解压缩内存缓冲区中的 pbzip2 数据
我有一个解压缩 bzip2 数据的工作版本,我在其中调用 bz2_bzdecompress API。它是这样的
这对于原生 bzip2 压缩文件非常有效,但对于 pbzip2(并行 Bzip2)和“可拆分”bzip2 数据,它会引发“BZ_PARAM_ERROR”。
我在他们的文档中看到 pbzip2 这么说-
使用 pbzip2 压缩的数据被分成多个流,每个流都经过 bzip2 压缩,如下所示:[-----|-----|-----|-----|-----| -----|-----|-----|-----]
如果您使用 libbzip2 编写软件来解压缩使用 pbzip2 创建的数据,则必须考虑到数据包含多个 bzip2 流,因此您将在每个流之后遇到来自 libbzip2 的流结束标记,并且必须提前查看是否存在在退出之前还有更多要处理的流。bzip2 程序本身会自动处理这种情况。
来源:http ://compression.ca/pbzip2/
有人可以告诉我如何处理吗?我应该使用其他一些 libzip2 API 吗?
此外,pbzip2 文件与普通的“bunzip2”命令兼容。当我的代码抛出 BZ_PARAM_ERROR 时,bzip2 如何优雅地处理这个问题?
谢谢。
c++ - 使用 libzip 将文件解压缩到磁盘
我正在尝试使用 c++ 和 libzip 库解压缩可执行文件。从 rodrigo 对类似问题的回答开始,我来到这个示例代码:
据我了解,这段代码确实可以解压缩文件,但我不知道如何将该文件写入磁盘,就像使用 winzip 之类的工具提取 zip 文件一样。将解压缩的数据放在内存中对我没有帮助,但我一直无法弄清楚如何将文件实际放到磁盘上。
c++ - Libzip - 错误:打开存档时出错:没有错误
我正在尝试找出解决问题的方法;事实上,我正在编写自己的工具来使用 C++ 中的 libzip 进行保存来压缩文件。
绝对没有完成,但我想做一些测试,然后我做了并从日志中获得了一个“有趣的”错误。
这是我的功能:
我得到了=> Error : Error while opening the archive : No error
,当然,我没有写任何 .zip。
如果你能帮助我,谢谢你!