2011-06-27 17 views
1

最近、Boost :: serializationを研究に使用し始めましたが、非常に強力で使いやすいですが、最終的なxml形式にはまだ少し問題があります。私はクラスの階層を持っていて、直列化されると、各サブクラスはxml出力のそれ自身のタグの中にネストされます。このサブクラスタグは、boost::serialization::base_objectの使用のために作成されます。誰も基本とサブクラスをXML階層の同じレベルに保つ方法を知っていますか?Boost :: serializationを使用したXML階層

例:現在のフォーマット

<baseClass> <attr>value</attr> <subClass> <otherAttr>value</otherAttr> </subClass> </baseClass>

ターゲットフォーマット:Boost.Serializationは特定ファイル形式に書き込むための機構であることを意図されていない

<baseClass> <attr>value</attr> <otherAttr>value</otherAttr> </baseClass>

+1

これを実行する必要がありますか(例:特定の出力が必要な別のプログラム)か、これは読みやすさを高めるためのものですか?この質問のコメントを参照してください:http://stackoverflow.com/questions/3931535/boost-serialize-serialize-data-in-a-custom-way - 特に、[Boost.Karma](http: /www.boost.org/doc/libs/1_44_0/libs/spirit/doc/html/spirit/karma.html) –

+0

ありがとう、皆さんありがとうございます。 Btw、@Merlynの質問に答える、はい、それは可読性のためです:)そうでなければ、テキストアーカイブは完璧です。 – Shnippoo

答えて

2

。クラスのデータをファイルにダンプし、そのデータをプログラムで再度読み取る方法です。フォーマットはあなたに関係するものではありません。

特定のファイル形式を使用している場合は、Merlynが示唆したように、Boost.Karmaジェネレータが必要です。

+0

+1;それは答えになったはずです...笑:) –

関連する問題