2

我们想在 Objective C 和 C# 之间有效地传递一个森林——一个具有值的字典,它可以是:字典、数组、集合、数字、字符串、字节缓冲区(在时间方面,空间是一个较小的问题)。Google 的 Protocol Buffers 看起来不错,但它们似乎只处理结构化数据,而我们的则是任意的。最终我们可以自己编写一个二进制(反)序列化器,但肯定这是之前完成的并在某处作为 FOSS 发布?

4

1 回答 1

0

您是否考虑过使用 ASN.1?由于 ASN.1 独立于编程语言或系统架构,因此无论您需要 C、C#、C++ 还是 Java,都可以有效地使用它。

您创建您希望交换的信息的描述,并使用 ASN.1 工具为您的目标编程语言生成编码器/解码器。ASN.1 还支持一些不同的日期传输规则,从高效的 PER(打包编码规则)到冗长但灵活的 XER(XML 编码规则)。

要使用 ASN.1 看看这是否适合您,请尝试http://asn1-playground.oss.com上的免费在线 ASN.1 编译器和编码器/解码器,看看这是否适合您。

于 2013-09-06T18:56:21.973 回答