libxml2(for C)は、保存時に元の形式で空の要素を保存していません。それは<tag></tag>
を<tag/>
に置き換えます。これは技術的には正しいものの、問題を引き起こします。libxml2空のタグを保持
xmlDocPtr doc = xmlParseFile("myfile.xml");
xmlNodePtr root = xmlSaveFile("mynewfile.xml", doc);
私はさまざまなオプション(xlmReadFile
を使用して)で遊んで試してみたが、どれも出力に影響を与えるように思いません。ここで1つの投稿はタグ圧縮を無効にすると述べていましたが、例はPERL用で、Cのアナログは見つかりませんでした。
この動作を無効にするオプションはありますか?
の可能重複[のlibxmlと にを変換する方法(空の要素を変換開始終了タグのペア)](http://stackoverflow.com/questions/11005902/how-to-convert-node-to-node-node-with-libxml-converting-empty-elements-t) –