javascript - 设计跨平台多内容类型文件格式的最佳方式?

标签 javascript c++ android xml file-format

我需要为一组应用程序(桌面/在线/移动..)重新设计一种文件格式,其中包含一组非线性数据和多个图像。 我不想把它变成一个带有嵌入式图像的大型 XML:

  • 首先,它可能会增长到一个大小,例如使用 javascript 解析会很慢
  • 其次,我希望它可以“手动”编辑。

不需要压缩。我只想将其作为单个文件分发。我希望我的解决方案尽可能跨平台。

我最近制作的是一个*.tar.gz 存档,里面有xmls 和图像。

  • 我的应用程序的桌面 (C++/Qt) 版本正在使用 zlib 读取文件(这很难编码但有效)。
  • 在线版本使用 PHP(执行 tar)解压缩文件(在数据库中缓存内容)并通过 ajax 将 xml 和图像传递给 javascript。
  • 当我开始开发 android 版本时,我有点卡住了,我不知道如何阅读这里的内容。

我想知道是否有更好/更简单的解决方案来实现这一点?

我找到的解决方案例如:

可能没有“最佳方法”来做到这一点,但我希望有一些广泛使用的解决方案?

我将不胜感激。

最佳答案

我不确定这是否符合您的“可手动编辑”标准,但要制作一个单一文件、跨平台的二进制格式,Google Protocol Buffers非常有用和高效,并且可以跨主要平台和语言工作。

如果“可手动编辑”很重要,通过一些额外的工作,您可以使用自己的消息库编写简单的实用程序来支持创建/更新/删除现有文件的部分(例如,提取图像进行编辑,并支持替换他们。)

关于javascript - 设计跨平台多内容类型文件格式的最佳方式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5981749/

相关文章:

android - 单击 fragment 中的后退按钮后应用程序关闭

android - 在 android 中加入表格

javascript - 同步等待处理请求

javascript - jQuery/Javascript 比较两个表

c++ - C++ 中的 lambda 返回类型

c++ - "error: taking address of temporary array"是什么意思?

javascript - 双括号 但不是 IIFE 或闭包,它是什么?它是有效的 JS 语法吗?

javascript - 无法从类内调用函数 - 函数无法识别

c++ - 生成随机字母数组并计算出现次数

java - 迁移AndroidX运行报错android.support.annotation does not exist