次の方法で共有


DOM への新しいノードの作成

XmlDocument には、すべてのノード タイプに対応する Create メソッドがあります。このメソッドに、名前が必要な場合は名前を渡し、コンテンツを持つノードではコンテンツやその他のパラメータを指定すると、そのノードが作成されます。コンテンツを持つノードには、たとえばテキスト ノードがあります。ノードを適切に作成するため、次のメソッドには、名前といくつかのパラメータを指定する必要があります。

  • CreateComment
  • CreateCDataSection
  • CreateDocumentFragment
  • CreateDocumentType
  • CreateElement
  • CreateProcessingInstruction
  • CreateTextNode
  • CreateXmlDeclaration
  • CreateWhitespace
  • CreateSignificantWhitespace

その他のノード タイプでは、パラメータにデータを与えるだけでなく、他の要件を満たす必要もあります。

属性の詳細については、「DOM の要素に対する新しい属性の作成」を参照してください。要素名と属性名の検証については、「新しいノードの作成時における XML 要素名および属性名の検証」を参照してください。エンティティ参照の作成については、「新しいエンティティ参照の作成」を参照してください。エンティティ参照の展開における名前空間の影響については、「要素と属性を含む新しいノードでのエンティティ参照の展開に対する名前空間の影響」を参照してください。

新しく作成したノードをツリーに挿入するには、いくつかのメソッドを使用できます。使用できるメソッドと、そのメソッドによって DOM のどこに新しいノードが作成されるかの説明を次の表に示します。

メソッド ノードの位置
InsertBefore 参照ノードの前に挿入されます。たとえば、5 番目の位置に新しいノードを挿入するには、次のようにします。
Dim refChild As XmlNode = node.ChildNodes(4)
'The reference is zero-based.node.InsertBefore(newChild, refChild);
[C#]
XmlNode refChild = node.ChildNodes[4];
//The reference is zero-based.
node.InsertBefore(newChild, refChild); 

詳細については、XmlNode.InsertBefore メソッドを参照してください。

InsertAfter 参照ノードの後に挿入されます。次にコード例を示します。
node.InsertAfter(newChild, refChild)
[C#]
node.InsertAfter(newChild, refChild); 

詳細については、XmlNode.InsertAfter メソッドを参照してください。

AppendChild 当該ノードの子ノードのリストの末尾にノードを追加します。追加するノードが XmlDocumentFragment である場合は、ドキュメント フラグメントの内容全体がこのノードの子リストに移動されます。詳細については、XmlNode.AppendChild メソッドを参照してください。
PrependChild 当該ノードの子ノードのリストの先頭にノードを追加します。追加するノードが XmlDocumentFragment である場合は、ドキュメント フラグメントの内容全体がこのノードの子リストに移動されます。詳細については、XmlNode.PrependChild メソッドを参照してください。
Append 要素と関連付けられている属性コレクションの末尾に XmlAttribute ノードを追加します。詳細については、XmlAttributeCollection.Append メソッドを参照してください。

参照

XML ドキュメント オブジェクト モデル (DOM)