【问题标题】:Boost serialization: from text_oarchive to xml_oarchiveBoost 序列化:从 text_oarchive 到 xml_oarchive
【发布时间】:2018-06-14 20:41:27
【问题描述】:

是否可以从 text_oarchive 转换为 xml_oarchive?

【问题讨论】:

    标签: serialization boost deserialization


    【解决方案1】:

    仅当序列化支持 XML 档案时。在这种情况下,请使用text_iarchive 读取您的存档并序列化回xml_oarchive

    XML 归档的主要要求是所有对象都被命名,所以:

     boost::archive::text_oarchive oa(std::cout);
     std::string name = "sample";
     oa & name;
    

    需要

     boost::archive::xml_oarchive oa(std::cout);
     std::string name = "sample";
     oa & BOOST_SERIALIZATION_NVP(name);
    

    另见https://www.boost.org/doc/libs/1_67_0/libs/serialization/doc/wrappers.html#nvp

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-06-16
      • 1970-01-01
      • 2011-05-16
      • 2011-12-28
      • 2015-09-05
      • 1970-01-01
      相关资源
      最近更新 更多