2
使用Delphi 2009,我試圖獲得一個聲明的名稱空間前綴以應用於我創建的IXMLDocument中的文檔元素。一旦創建了文檔元素,我可以用一個前綴聲明一個名稱空間,但它不會應用於文檔元素,而且我似乎也無法更改文檔元素的前綴。如果我使用doc.CreateElement(nodename,namespaceURI)創建文檔元素,它將指定的URI添加爲文檔的默認命名空間,這不是我想要的。我正在創建的這個文檔將被添加到已經有一個默認命名空間的另一個文檔中。如何在Delphi中設置文檔元素的前綴
Result := NewXMLDocument;
eleDoc := Result.CreateElement(TAG_IH_IMPORT, NS_HISTORIAN);
eleDoc.DeclareNamespace(FNamespacePrefix, NS_HISTORIAN);
其中TAG_IH_IMPORT和NS_HISTORIAN是字符串常量,eleDoc:IXMLNode和FNamespacePrefix:字符串。
這樣做的輸出看起來像:
<Import xmlns="uri" xmlns:h="uri" />
我真的想要得到的是「H:」應用到導入標籤。有什麼建議麼?
謝謝。
謝謝,雷米。我已經實施了第二個解決方案,但還沒有回到這裏發佈。你的第一個建議更清晰,我不知道爲什麼我沒有嘗試它,除非我沒有想到它會起作用。 – RJCookeSE 2010-06-29 11:19:46