2016-08-26 13 views
0

私はmini-xmlを使用してxmlファイルを作成します。 私のフォーマットは以下の通りです。mini-xmlライブラリを使用したxmlファイルの作成

<?xml version='1.0' encoding='ISO-8859-1'?> 
<?xml-stylesheet type='text/xsl' href='image_metadata_stylesheet.xsl'?> 
<dataset> 
<name>imglab dataset</name> 
<comment>Created by imglab tool.</comment> 
<images> 
    <image file='train/10.png'> 
    <box top='154' left='450' width='56' height='155'/> 
    </image> 
    <image file='train/1051.png'> 
    <box top='132' left='484' width='40' height='116'/> 
    <box top='97' left='452' width='40' height='105'/> 
    <box top='147' left='398' width='50' height='133'/> 
    </image> 
</images> 
</dataset> 

私はこれらのデータをXMLファイルに書きたいと思います。 サンプルを探しましたが、見つけにくいです。 次の要素を作成できます。

FILE *fp; 
mxml_node_t *tree; 
fp = fopen("filename.xml", "w"); 
if(fp==NULL){ 
    cout << "Error in xml file!" << endl; 
    exit(1);    
} 
mxml_node_t *xml; /* <?xml ... ?> */ 
mxml_node_t *dataset; /* <data> */ 
mxml_node_t *images; /* <data> */ 
mxml_node_t *box; /* <node> */ 
mxml_node_t *image; /* <group> */ 
xml = mxmlNewXML("1.0"); 
dataset = mxmlNewElement(xml, "dataset"); 
images = mxmlNewElement(dataset, "images"); 
image = mxmlNewElement(images, "image"); 
box = mxmlNewElement(image, "box"); 

実際にXMLファイルに書き込むと、XMLファイルに書き込む方法はありません。 mini-xmlを使用してc/C++でxmlファイルを作成する方法のサンプルがあります。 の保存XML段落でdocumentationを見ると

おかげ

答えて

1

が、それはかなり明白ようだ:

FILE *fp; 
mxml_node_t *tree; 
fp = fopen("filename.xml", "w"); 
mxmlSaveFile(tree, fp, MXML_NO_CALLBACK); 
fclose(fp); 

することができますならば、私は、そのようpugyxmlとして(あなたは別のC++のXMLライブラリを使用することをお勧めtinyxmlをいくつか挙げる)。あなたのライブラリはC++ ishでなく、バ​​グのためだけに古いものだと感じています。

+0

書き方の例はありません。 – batuman

+0

あなたはこの文書を読んでいないのですか?ドキュメンテーションの* XML文書の作成*をチェックしてください。 – coincoin

関連する問題