2

私はxml文字列を持っています

<grandparent>
   <parent>
       <child>dave</child>
       <child>laurie</child>
       <child>gabrielle</child>
   </parent>
</grandparrent>

私が取得したいのは、親の中にあるデータの生のxmlです。私はMSXMLを使用しています

iXMLElm->get_xml(&bStr);

戻ってきています

<parent>
   <child>dave</child>
   <child>laurie</child>
   <child>gabrielle</child>
</parent>

.

iXMLElm->get_text(&bStr);

davelauriegabrielle を返します

取得したい場合は、どの関数を使用しますか?

<child>dave</child>
   <child>laurie</child>
   <child>gabrielle</child>

これらの機能に関する優れたドキュメントを知っている人はいますか? 私が見たものはすべてリンクされた悪夢です。

4

3 に答える 3

1

子ノードを繰り返し処理し、文字列を手動で構築します。

于 2008-12-11T15:19:34.183 に答える
0

MSXML を使用している場合、これは祖父母ノードの子ノードを取得する場合です。

したがって、iXMLElmが祖父母で、子ノードが 1 つしかない場合は、次のように使用できます...

 iXMLElm->get_firstChild(&iXMLChildElm)

...その後...

 iXMLChildElm->get_xml(&bStr)

...3 つのchild要素を取得します。

下に複数のアイテムがある場合grandparentは、selectSingleNode代わりに XPath を使用して、必要な内部 XML を持つノードを選択できます。

MSDNのドキュメントは、利用可能なインターフェイスと呼び出しについて非常に合理的です。

于 2008-12-11T21:59:24.203 に答える
-1

IXMLDOMElementを使用している場合は、

HRESULT getAttribute(
    BSTR name,
    VARIANT *value);

'name'が属性名であり、'value'が文字列形式の属性の値を含む出力パラメーターであるメソッドです。

于 2011-06-07T06:09:07.663 に答える