C ++序列化Clean XML与XSTREAM类似
我需要编写一个linux c ++应用程序,它以XML格式保存设置(便于手动编辑),并通过套接字和HTTP上的XML消息与现有应用程序通信。问题是我找不到任何智能库来帮助我,我并不特别喜欢编写DOM或SAX代码来编写和阅读一些非常简单的消息。
Boost Serialization几乎是匹配,但它为它生成的xml添加了许多特定于boost的数据。这显然不适用于交换格式。我想知道是否有可能使Boost Serialization或其他一些c ++序列化库生成干净的xml。我不介意是否有一些必需的额外属性 - 比如版本属性,但我真的希望能够控制他们的命名并摆脱我不使用的'功能' - tracking_level和class_id for实例。
理想情况下,我只想在Java中使用类似于xstream的东西。我知道c ++缺乏内省,因此有必要进行一些手动编码 - 但是如果有一个干净的解决方案来读取和编写简单的XML而没有kludges会很好!
如果无法做到这一点,我也对XML模式是规范资源(合同优先)的工具感兴趣 - 一个很好的JAXB替代C ++。到目前为止,我只找到了像CodeSynthesis XSD这样的商业解决方案。我更喜欢开源解决方案。我尝试过gSoap - 但是它生成了非常丑陋的代码,并且它也是特定于SOAP的。
无奈之下,我也开始研究protobuffers的替代序列化格式。这存在 - 但仅限Java!令我惊讶的是,协议缓冲区似乎是比XML更好的支持数据交换格式。
我很生气只为这个应用程序找到libs,我真的需要一些新的想法。任何人?
没有找到相关结果
已邀请:
3 个回复
委婪绷冗诉
镀建啼
漂截嘘