问题标签 [lzma]

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.

0 投票
1 回答
7096 浏览

7zip - 7z 和 lzma 压缩机有什么区别?

7-Zip 声称使用LZMA作为压缩算法。但是,LZMA SDK带有两个可执行文件,7zr.exe 和 lzma.exe,它们具有不同的选项/开关,并且会产生不同的结果,即使它们的大小非常接近,也无法互换。

所以问题是:这两个处理器有什么区别?

0 投票
1 回答
4398 浏览

python - 使用 PyLZMA 和 py7zlib 将文件夹递归压缩为 7z

经过反复试验,我已经弄清楚了如何通过 PyLZMA 制作 lzma 压缩文件,但我想复制看似简单的任务,即递归地压缩文件夹及其所有文件/目录到 7z 文件。我只会通过 7z.exe 来完成,但在完成之前我似乎无法捕捉到进程的标准输出,我想要一些每个 7z 文件的进度,因为我将压缩范围从数百个的文件夹超过 1 TB 的演出。不幸的是,我无法提供我尝试过的任何代码,仅仅是因为我看到的使用 py7zlib 的唯一示例是从预先存在的文件中提取文件。有没有人对这两者的结合有任何运气或可以提供一些帮助?

对于它的价值,这将在使用 python 2.7 的 Windows 上。如果这里可能发生一些神奇的多线程,特别是考虑到 lzma 压缩似乎有多慢(然而,时间在这里不是问题),则可以加分。提前致谢!

0 投票
0 回答
475 浏览

python - pylzma 流(解)压缩缓冲区大小

在 github.com/fancycode/pylzma/blob/master/doc/usage.txt 有一个流(解)压缩的示例用法,但是,它总是读取 1 个字节,显然,这会变得相对较慢。

但是,以更大的大小(例如 65k)读取并按obj.decompress()原样执行大文件会成为问题,因为显然,结果 pylzma 将大部分数据存储在内部,然后将其全部解压缩到obj.flush().

decompress方法有一个bufsize参数(默认情况下似乎是 128k)。将其设置为超过 30*read_size(30 是近似压缩比)使解压缩按预期工作(并且非常快);但是,这显然会中断,例如,几 GB 的零字节(因为压缩率会高得多)。

因此,问题是:如何使用 pylzma 正确(解)压缩文件(使用适当的缓冲区大小来提高速度)?

0 投票
0 回答
291 浏览

java - 有没有办法使用“SevenZip.LzmaAlone”类压缩来保持压缩文件扩展名?

我正在使用 Java 进行大文件压缩。(对我来说)将我的文件压缩为 7z 文件(LZMA 压缩)是强制性的。

为此,我使用的是7z Java SKD。我正在调用 Decoder.code(...) 方法,一切正常。我从原始文件中获得了一个压缩的 7z 文件。唯一的问题是,当我手动提取它时,我得到一个无扩展名的文件,而它应该是一个“.xml”文件......

即使通过 7z 存档,任何人都知道如何保留我的原始文件的扩展名?

0 投票
0 回答
307 浏览

compilation - 在 Mac OSX 上编译 LZMA 的 Makefile 错误

我已经下载了最新的LZMA SDK并尝试在 Mac OSX 上编译它,尽管 tar 球中包含的任何 makefile 都会出错。这是我尝试运行的任何makefile的错误:

任何帮助将不胜感激 - 谢谢!

0 投票
2 回答
216 浏览

macos - lzma 压缩的冰山

我使用 iceberg 为 OS X 平台分发我的软件包。

我想用 lzma 算法压缩我的文件,比如 nsis(对于 windows)。

我对此进行了研究,但找不到任何相关信息。冰山和 lzma 可能没有解决方案,但我有一个希望。

有人知道如何使用 iceberg 和 lzma 压缩吗?

0 投票
2 回答
4223 浏览

c++ - lzma从内存c ++中压缩/解压缩

我有一个代码工作,但我对结果并不完全满意,所以我想我可以在这里问一些问题。

这是我的两个功能:

和 :


  1. 在这两个函数中,我应该如何知道将什么值放入 dstLen ?我不想白白分配大量内存。
  2. 我必须转换为 char* 是不是很糟糕?我真的必须使用 unsigned char 吗?
  3. 我尝试更改 LzmaCompress (numThreads) 的最后一个参数,但它并没有提高性能,甚至一点也没有。还有其他事情要做吗?
  4. 如果您有任何提示,请随时告诉我。

谢谢。

0 投票
1 回答
2686 浏览

python - 如何在 python 代码中使用 lzma2?

我知道有一个名为 pylzma 的模块。但它只支持lzma,不支持lzma2。

我目前的解决方案是subprocess.call()用来调用 7z 程序。

有没有更好的办法?

0 投票
1 回答
554 浏览

java - 使用 java.util.zip 转换 zip 目录函数以使用 LZMA

我目前有一个函数 makeBackup() 可以将整个目录压缩成一个 zip 文件,但是文件太大了,所以我们决定切换到 LZMA。我们找到了一个执行此操作的库(lzma-java),但它似乎只压缩单个文件,而我们使用的 zip 函数允许将文件和目录添加到 zip 文件中。

我们如何通过改变我们的函数来用 LZMA 实现相同的功能?我在下面添加了我们当前的功能:

0 投票
2 回答
1193 浏览

java - 有没有一种在 Java 中处理 *fast* 压缩到 LZMA 的好方法?

7-Zip 作者提供的本机Java LZMA SDK可以工作,但速度不足以满足我的需求。高级实现似乎无法处理算法所需的低级工作。

我找到了7-Zip-JBinding,它在 7-Zip 附带的 C++ dll 上实现了JNI覆盖。这以合理的速度处理解压缩,但它处于测试阶段,目前不支持压缩

无论如何,我的问题分为两部分:

  1. 我是否假设 DLL 包装器是快速 Java 实现的最佳选择?
  2. 如果是这样,是否有一个预先存在的项目我应该看,或者我必须从头开始写一些东西?