Velocity Reviews

Velocity Reviews (
-   C++ (
-   -   boost::archive::xml_iarchive (

Mark 10-25-2012 10:50 AM


#include <iostream>
#include <fstream>
#include <vector>
#include <string>
# include <sstream>

// Boost
#include <boost/scoped_ptr.hpp>
#include <boost/shared_ptr.hpp>
#include <boost/archive/xml_oarchive.hpp>
#include <boost/archive/xml_iarchive.hpp>
#include <boost/serialization/string.hpp>
#include <boost/serialization/vector.hpp>
#include <boost/serialization/scoped_ptr.hpp>
#include <boost/serialization/shared_ptr.hpp>
#include <boost/serialization/export.hpp>
#include <boost/serialization/nvp.hpp>

int main(int argc, char* argv[]) {
try {

std::ifstream file("test.xml" );
if ( !file ) {
std::string str ( ( std::istreambuf_iterator<char> ( file ) ),
std::istreambuf_iterator<char>() );
std::cout << str << std::endl;
std::istringstream iss ( str ) ;
boost::archive::xml_iarchive ia( iss );
} catch ( const boost::archive::archive_exception& e ) {
std::cout << e.what() << std::endl;

The contents of test.xml is as follows:

<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<boost_serialization signature="serialization::archive" version="3">
<s class_id="0" tracking_level="0" version="1">
<attrs class_id="1" tracking_level="0" version="0">
<item class_id="2" tracking_level="0" version="0">

When I run the code I get 'unrecognized XML syntax' which is puzzling given the XML is well-formed at least according to XML spy.

boost::archive::xml_iarchive ia( file);

Produce the same result. It's not clear to me what the issue ('unrecognized XML syntax doesn't tell me a whole lot) or fix is.

All times are GMT. The time now is 01:30 PM.

Powered by vBulletin®. Copyright ©2000 - 2014, vBulletin Solutions, Inc.
SEO by vBSEO ©2010, Crawlability, Inc.