问题标签 [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.
python - 使用 PyLZMA 和 py7zlib 将文件夹递归压缩为 7z
经过反复试验,我已经弄清楚了如何通过 PyLZMA 制作 lzma 压缩文件,但我想复制看似简单的任务,即递归地压缩文件夹及其所有文件/目录到 7z 文件。我只会通过 7z.exe 来完成,但在完成之前我似乎无法捕捉到进程的标准输出,我想要一些每个 7z 文件的进度,因为我将压缩范围从数百个的文件夹超过 1 TB 的演出。不幸的是,我无法提供我尝试过的任何代码,仅仅是因为我看到的使用 py7zlib 的唯一示例是从预先存在的文件中提取文件。有没有人对这两者的结合有任何运气或可以提供一些帮助?
对于它的价值,这将在使用 python 2.7 的 Windows 上。如果这里可能发生一些神奇的多线程,特别是考虑到 lzma 压缩似乎有多慢(然而,时间在这里不是问题),则可以加分。提前致谢!
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 正确(解)压缩文件(使用适当的缓冲区大小来提高速度)?
java - 有没有办法使用“SevenZip.LzmaAlone”类压缩来保持压缩文件扩展名?
我正在使用 Java 进行大文件压缩。(对我来说)将我的文件压缩为 7z 文件(LZMA 压缩)是强制性的。
为此,我使用的是7z Java SKD。我正在调用 Decoder.code(...) 方法,一切正常。我从原始文件中获得了一个压缩的 7z 文件。唯一的问题是,当我手动提取它时,我得到一个无扩展名的文件,而它应该是一个“.xml”文件......
即使通过 7z 存档,任何人都知道如何保留我的原始文件的扩展名?
compilation - 在 Mac OSX 上编译 LZMA 的 Makefile 错误
我已经下载了最新的LZMA SDK并尝试在 Mac OSX 上编译它,尽管 tar 球中包含的任何 makefile 都会出错。这是我尝试运行的任何makefile的错误:
任何帮助将不胜感激 - 谢谢!
macos - lzma 压缩的冰山
我使用 iceberg 为 OS X 平台分发我的软件包。
我想用 lzma 算法压缩我的文件,比如 nsis(对于 windows)。
我对此进行了研究,但找不到任何相关信息。冰山和 lzma 可能没有解决方案,但我有一个希望。
有人知道如何使用 iceberg 和 lzma 压缩吗?
c++ - lzma从内存c ++中压缩/解压缩
我有一个代码工作,但我对结果并不完全满意,所以我想我可以在这里问一些问题。
这是我的两个功能:
和 :
- 在这两个函数中,我应该如何知道将什么值放入 dstLen ?我不想白白分配大量内存。
- 我必须转换为 char* 是不是很糟糕?我真的必须使用 unsigned char 吗?
- 我尝试更改 LzmaCompress (numThreads) 的最后一个参数,但它并没有提高性能,甚至一点也没有。还有其他事情要做吗?
- 如果您有任何提示,请随时告诉我。
谢谢。
python - 如何在 python 代码中使用 lzma2?
我知道有一个名为 pylzma 的模块。但它只支持lzma,不支持lzma2。
我目前的解决方案是subprocess.call()
用来调用 7z 程序。
有没有更好的办法?
java - 使用 java.util.zip 转换 zip 目录函数以使用 LZMA
我目前有一个函数 makeBackup() 可以将整个目录压缩成一个 zip 文件,但是文件太大了,所以我们决定切换到 LZMA。我们找到了一个执行此操作的库(lzma-java),但它似乎只压缩单个文件,而我们使用的 zip 函数允许将文件和目录添加到 zip 文件中。
我们如何通过改变我们的函数来用 LZMA 实现相同的功能?我在下面添加了我们当前的功能:
java - 有没有一种在 Java 中处理 *fast* 压缩到 LZMA 的好方法?
7-Zip 作者提供的本机Java LZMA SDK可以工作,但速度不足以满足我的需求。高级实现似乎无法处理算法所需的低级工作。
我找到了7-Zip-JBinding,它在 7-Zip 附带的 C++ dll 上实现了JNI覆盖。这以合理的速度处理解压缩,但它处于测试阶段,目前不支持压缩。
无论如何,我的问题分为两部分:
- 我是否假设 DLL 包装器是快速 Java 实现的最佳选择?
- 如果是这样,是否有一个预先存在的项目我应该看,或者我必须从头开始写一些东西?