【问题标题】:How to combine XML-like format with binary data?如何将类 XML 格式与二进制数据结合起来?
【发布时间】:2013-02-11 19:25:02
【问题描述】:

my question here 的基础上,将人类可读的类似XML 的文件格式与二进制数据块结合起来的最佳方式是什么?最好是创建两个文件(一个符合 XML 的链接到带有纯二进制数据的第二个文件)还是创建一个不符合 XML 的 XML 和二进制数据的混合?是否有任何可用的“混合物”(以避免创建完全专有的东西)?我想要的是有效地将一些人类可读的数据与不需要人类可读但需要尽可能高效地存储的大量数据(因为它可能是千兆字节的数据)结合起来。

【问题讨论】:

  • 对于少量数据,您可以将 base64 编码的二进制数据作为文本包含到 XML 中,而不会出现问题。对于大量数据,解决方案取决于特定的使用场景(如何创建和访问数据 - 它可以是从 XML 到附近二进制文件的外部引用,也可以是附加二进制数据的 XML 或您可以处理的任何内容在您的应用程序中。
  • 你可以试试快速信息集
  • 有没有办法按照你的建议附加一个二进制块,并且仍然保持 XML 一致,例如通过定义文档的 XML 部分的长度?

标签: xml encoding storage binary-data


【解决方案1】:

没有标准的方法可以做到这一点,但这是一个简单的习语,我已经看过好几次了。

使用不符合标准的组合,但目的是使将整个 XML 块读入字符串然后从该字符串解析变得容易。

这保持了允许您在大多数 XML 解析器之间进行选择的灵活性。

所以我建议启用快速加载 XML 块的文件格式是:

  1. XML 部分长度的前缀
  2. XML 部分
  3. 二进制部分

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-10-04
    • 2021-04-08
    • 1970-01-01
    • 1970-01-01
    • 2016-11-07
    • 2021-11-13
    • 1970-01-01
    相关资源
    最近更新 更多