命令行 - 在 base64-gzip 中编码 JAR 文件

Command Line - encode JAR file in base64-gzip

我需要更改 Lotus 格式的 xfdl 文件,在该格式中使用了 jar 文件。 我没有 Lotus Form Editor,但是我在 base64-gzip 中的 xfdl 中发现了 jars,所以我想编译新的 .jar 文件,而不是用新数据替换表单文件中的旧数据。 那么,如何从 cmd 以 base64-gzip 压缩 jar

示例:

<data sid="viewerUtils">
         <mimetype>application/uwi_jar</mimetype>
         <filename>app.jar</filename>
         <mimedata encoding="base64-gzip">H4sIAAAAAAAAAKS5c3RmS78tHNu207Ftd2zbtp2Obdu2O07Htm3bTu7e933PuWfv73x9...
// this base64 string I want replace
</mimedata>
      </data>
   </page>

换句话说,我如何从 Lotus Form 解码 .jar 文件。我尝试使用 linux pipe base64|gzip -d 但 gzip 说 gzip: stdin: not in gzip format。还尝试对 .jar 进行编码并粘贴到 .xfdl 中,但 Lotus Forms Viewer 未打开表单,并且来自表单和终端的 jar-gzip-base64 源看起来不相同,我尝试了不同的压缩级别,但没有成功。

由于您正在 de编码 Base64,因此您需要 base64 -d|gzip -d。再次编码 base64 字符串显然不会生成 zip 文件。