XmlDocument.CreateElement 方法

定义

创建 XmlElement

重载

CreateElement(String)

创建具有指定名称的元素。

CreateElement(String, String)

创建具有限定名和 NamespaceURIXmlElement

CreateElement(String, String, String)

创建具有指定 PrefixLocalNameNamespaceURI 的元素。

CreateElement(String)

创建具有指定名称的元素。

public:
 System::Xml::XmlElement ^ CreateElement(System::String ^ name);
public System.Xml.XmlElement CreateElement (string name);
member this.CreateElement : string -> System.Xml.XmlElement
Public Function CreateElement (name As String) As XmlElement

参数

name
String

元素的限定名。 如果名称包含冒号,则 Prefix 属性反映名称中位于冒号之前的部分,LocalName 属性反映名称中位于冒号之后的部分。 限定名称不能包含“xmlns”前缀。

返回

XmlElement

新的 XmlElement

示例

以下示例创建一个新元素并将其添加到文档中。

#using <System.Xml.dll>

using namespace System;
using namespace System::IO;
using namespace System::Xml;
int main()
{
   
   //Create the XmlDocument.
   XmlDocument^ doc = gcnew XmlDocument;
   doc->LoadXml( "<book genre='novel' ISBN='1-861001-57-5'><title>Pride And Prejudice</title></book>" );
   
   //Create a new node and add it to the document.
   //The text node is the content of the price element.
   XmlElement^ elem = doc->CreateElement( "price" );
   XmlText^ text = doc->CreateTextNode( "19.95" );
   doc->DocumentElement->AppendChild( elem );
   doc->DocumentElement->LastChild->AppendChild( text );
   Console::WriteLine( "Display the modified XML..." );
   doc->Save( Console::Out );
}

using System;
using System.IO;
using System.Xml;

public class Sample
{
  public static void Main()
  {
    //Create the XmlDocument.
    XmlDocument doc = new XmlDocument();
    doc.LoadXml("<book genre='novel' ISBN='1-861001-57-5'>" +
                "<title>Pride And Prejudice</title>" +
                "</book>");

    //Create a new node and add it to the document.
    //The text node is the content of the price element.
    XmlElement elem = doc.CreateElement("price");
    XmlText text = doc.CreateTextNode("19.95");
    doc.DocumentElement.AppendChild(elem);
    doc.DocumentElement.LastChild.AppendChild(text);

    Console.WriteLine("Display the modified XML...");
    doc.Save(Console.Out);
  }
}
Option Explicit
Option Strict

Imports System.IO
Imports System.Xml

Public Class Sample
    
    Public Shared Sub Main()
        'Create the XmlDocument.
        Dim doc As New XmlDocument()
        doc.LoadXml("<book genre='novel' ISBN='1-861001-57-5'>"  & _
                    "<title>Pride And Prejudice</title>"  & _
                    "</book>")
        
        'Create a new node and add it to the document.
        'The text node is the content of the price element.
        Dim elem As XmlElement = doc.CreateElement("price")
        Dim text As XmlText = doc.CreateTextNode("19.95")
        doc.DocumentElement.AppendChild(elem)
        doc.DocumentElement.LastChild.AppendChild(text)
        
        Console.WriteLine("Display the modified XML...")
        doc.Save(Console.Out)
    End Sub
End Class

注解

请注意,返回的实例实现 XmlElement 接口,因此将直接在返回的对象上创建默认属性。

尽管此方法在文档上下文中创建新对象,但它不会自动将新对象添加到文档树。 若要添加新对象,必须显式调用其中一个节点插入方法。

根据 W3C 可扩展标记语言 (XML) 1.0 建议,元素节点允许在 Document 和元素节点中,当 EntityReference 节点不是属性节点的子节点时,允许在 EntityReference 节点中。

适用于

CreateElement(String, String)

创建具有限定名和 NamespaceURIXmlElement

public:
 System::Xml::XmlElement ^ CreateElement(System::String ^ qualifiedName, System::String ^ namespaceURI);
public System.Xml.XmlElement CreateElement (string qualifiedName, string namespaceURI);
public System.Xml.XmlElement CreateElement (string qualifiedName, string? namespaceURI);
member this.CreateElement : string * string -> System.Xml.XmlElement
Public Function CreateElement (qualifiedName As String, namespaceURI As String) As XmlElement

参数

qualifiedName
String

元素的限定名。 如果名称包含冒号,则 Prefix 属性将反映名称中位于冒号前的部分,而 LocalName 属性将反映名称中位于冒号后的部分。 限定名称不能包含“xmlns”前缀。

namespaceURI
String

元素的命名空间 URI。

返回

XmlElement

新的 XmlElement

注解

以下 C# 代码

XmlElement elem;  
elem=doc.CreateElement("xy:item", "urn:abc");  

结果为等效于以下 XML 文本的元素。

<xy:item  
       xmlns:xy="urn:abc"/>  

尽管此方法在文档上下文中创建新对象,但它不会自动将新对象添加到文档树。 若要添加新对象,必须显式调用其中一个节点插入方法。

根据 W3C 可扩展标记语言 (XML) 1.0 建议,元素节点允许在 Document 和元素节点中,当 EntityReference 节点不是属性节点的子节点时,允许在 EntityReference 节点中。

适用于

CreateElement(String, String, String)

创建具有指定 PrefixLocalNameNamespaceURI 的元素。

public:
 virtual System::Xml::XmlElement ^ CreateElement(System::String ^ prefix, System::String ^ localName, System::String ^ namespaceURI);
public virtual System.Xml.XmlElement CreateElement (string prefix, string localName, string namespaceURI);
public virtual System.Xml.XmlElement CreateElement (string? prefix, string localName, string? namespaceURI);
abstract member CreateElement : string * string * string -> System.Xml.XmlElement
override this.CreateElement : string * string * string -> System.Xml.XmlElement
Public Overridable Function CreateElement (prefix As String, localName As String, namespaceURI As String) As XmlElement

参数

prefix
String

新元素的前缀(如果有的话)。 String.Empty 与 null 等效。

localName
String

新元素的本地名称。

namespaceURI
String

新元素的命名空间 URI(如果有的话)。 String.Empty 与 null 等效。

返回

XmlElement

新的 XmlElement

示例

以下示例向现有 XML 文档添加新元素。

#using <System.Xml.dll>

using namespace System;
using namespace System::IO;
using namespace System::Xml;
int main()
{
   
   // Create the XmlDocument.
   XmlDocument^ doc = gcnew XmlDocument;
   String^ xmlData = "<book xmlns:bk='urn:samples'></book>";
   doc->Load( gcnew StringReader( xmlData ) );
   
   // Create a new element and add it to the document.
   XmlElement^ elem = doc->CreateElement( "bk", "genre", "urn:samples" );
   elem->InnerText = "fantasy";
   doc->DocumentElement->AppendChild( elem );
   Console::WriteLine( "Display the modified XML..." );
   doc->Save( Console::Out );
}

using System;
using System.IO;
using System.Xml;

public class Sample {

  public static void Main() {

    // Create the XmlDocument.
    XmlDocument doc = new XmlDocument();
    string xmlData = "<book xmlns:bk='urn:samples'></book>";

    doc.Load(new StringReader(xmlData));

    // Create a new element and add it to the document.
    XmlElement elem = doc.CreateElement("bk", "genre", "urn:samples");
    elem.InnerText = "fantasy";
    doc.DocumentElement.AppendChild(elem);

    Console.WriteLine("Display the modified XML...");
    doc.Save(Console.Out);
  }
}
Imports System.IO
Imports System.Xml

public class Sample 

  public shared sub Main() 

    ' Create the XmlDocument.
    Dim doc as XmlDocument = new XmlDocument()
    Dim xmlData as string = "<book xmlns:bk='urn:samples'></book>"

    doc.Load(new StringReader(xmlData))

    ' Create a new element and add it to the document.
    Dim elem as XmlElement = doc.CreateElement("bk", "genre", "urn:samples")
    elem.InnerText = "fantasy"
    doc.DocumentElement.AppendChild(elem)

    Console.WriteLine("Display the modified XML...")
    doc.Save(Console.Out)

  end sub
end class

注解

以下 C# 代码

XmlElement elem;  
elem=doc.CreateElement("xy", "item", "urn:abc");  

创建等效于以下 XML 文本的元素:

<xy:item xmlns:xy="urn:abc"/>  

尽管此方法在文档上下文中创建新对象,但它不会自动将新对象添加到文档树。 若要添加新对象,必须显式调用其中一个节点插入方法。

根据 W3C 可扩展标记语言 (XML) 1.0 建议,元素节点允许在 Document 节点和元素节点内,在 EntityReference 节点外部时,在 EntityReference 节点中。

此方法是文档对象模型 (DOM) 的 Microsoft 扩展。

适用于