如何修改.xfdl文件? (更新#1)(How can I modify .xfdl files

2019-08-31 19:01发布

.XFDL文件扩展名标识XFDL格式的文档文件。 这些都属于基于XML的文档和模板格式标准。 这种格式是完全一样的XML文件格式,但是,包含了加密的安全通信应用的水平。

我知道如何使用文件浏览器,我发现查看XFDL文件在这里 。 我还可以修改,并通过做文件保存这些文件:保存/另存为。 我想,然而,动态修改这些文件。 有什么建议? 这甚至可能吗?

更新#1:我现在已经成功解码和解压的一个.xfdl到一个XML文件,然后我就可以编辑。 现在,我正在寻找一种方式来修改XML文件进行重新编码回的base64的gzip(使用Ruby或命令行)

Answer 1:

如果编码为BASE64那么这是我在网络上偶然发现了解决方案的链接 :

“解码XDFL文件保存‘编码=的base64’文件保存:

application/vnd.xfdl;content-encoding="base64-gzip"

是简单的base64编码的gzip文件。 他们可以通过先解码容易地恢复到XML,然后解压缩它们。 这可以在Ubuntu上,如下所示:

sudo apt-get install uudeview uudeview -i yourform.xfdl gunzip -S "" < UNKNOWN.001 > yourform-unpacked.xfdl 

第一个命令将安装uudeview,一个包,可以解码的base64,等等。 一旦安装,你可以跳过这一步。

假设你的形式被保存为“yourform.xfdl”,该uudeview命令将解码的内容为“UNKNOWN.001”,因为XFDL文件不包含文件名。 “i”可选项使得uudeview uninteractive,删除选项进行更多的控制。

最后一个命令gunzips解码文件到一个名为“yourform-unpacked.xfdl”文件。 “

另一种可能的解决方案- 在这里

边注:引用块<代码>不适合的码长串的工作



Answer 2:

我现在能想到的唯一的答案就是 - 读uudeview手册。

虽然我很想帮助你,我不是这方面的专家,所以你必须等待有人更见地在这里下来帮你。

同时,我可以给你链接到一些文件,可以帮助你:

  • UUDeview首页
  • 使用XDFLengine
  • 流汗开始与XDFL引擎

很抱歉,如果这并不能帮助你。



Answer 3:

你不必走出红宝石要做到这一点,可以使用Ruby中的Base64模块文件编码是这样的:

irb(main):005:0> require 'base64'
=> true

irb(main):007:0> Base64.encode64("Hello World")
=> "SGVsbG8gV29ybGQ=\n"

irb(main):008:0> Base64.decode64("SGVsbG8gV29ybGQ=\n")
=> "Hello World"

你也可以使用内核#系统调用的gzip / gunzip解:

system("gzip foo.something")
system("gunzip foo.something.gz")


文章来源: How can I modify .xfdl files? (Update #1)