在C++中合并Jar文件(或ZIP与Jar)

Merging Jar Files (Or a ZIP with a Jar) in C++

本文关键字:Jar ZIP 文件 C++ 合并      更新时间:2023-10-16

我有一个jar文件和一个zip文件。我需要将.zip中的内容移动到.jar中——如何使用C++来实现这一点?我没有预先存在的代码,不知道从哪里开始。有没有系统()批处理命令可以合并文件?甚至可能只是一些操作员的"复制"命令?

我不想使用7z或winRAR,我希望它都是C++,如果有办法通过system(),甚至可以是批处理。我只是不希望用户必须下载这些实用程序才能让这个启动器工作。

这是一个自定义的Minecraft发射器的应用程序。我需要将forge文件与Minecraft.jar文件合并。分发修改后的Minecraft.jar是非法的——必须从Minecraft下载正常的,然后下载修改后的,然后合并。

谢谢!

使用类似7zip的东西-将两者解压缩到同一目录,然后重新压缩为.jar,因为它们本质上是相同的。

7z e 1.8.3.jar
7z e mod.zip
del 1.8.3.jar
del mod.zip
7z a 1.8.3.jar

这可能是一种更好的方法,但7zip很容易使用。

这个问题最接近的答案在这里。它解释了如何使用批处理来实现这一点,批处理可以在C++中实现。