これはおそらく非常に愚かな質問ですが、私はどんな助けにも感謝したいと思います。私はlibxml2を使用して、SQLデータベースのデータからXMLファイルを作成しています。だから私はSQLテーブルのフィールドをループして次のようなことをしています:
xmlNewChild(node, NULL, (xmlChar*) template[i].c_str(), (xmlChar*) data[i].c_str());
XMLの作成:
<template>data</template>
さて、これらのごく一部については、こっそりと、data[i]
XMLを含む文字列に等しい値を設定して別のサブノードを配置したいと思います。したがって、たとえば、 結果のXMLが次のようになるように設定data[i]
します。<subnode>text</subnode>
<template><subnode>text</subnode></template>
ただし、XMLでは、これらは常にレンダリングされ<
、>
:
<template><subnode>text</subnode></template>
山かっこを保持する方法はありますか?xmlNewChild()
代わりに使用すると文字が保存されると思いましたxmlNewTextChild()
が、そうではないようです。角かっこを含む文字列を入れて、data[i]
作成されたXMLにそれらのかっこを保持する方法はありますか?
(この方法で追加のxmlタグをスニークすることは、やや大雑把な方法のように思えますが、私の場合、多くのフィールドのどれにサブノードが必要かを判断し、それらのサブノードを標準的な方法で構築するよりもはるかに簡単です)。