XmlDocument.CreateNode Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Vytvoří .XmlNode
Přetížení
CreateNode(String, String, String) |
Vytvoří typ XmlNode zadaného uzlu Namea NamespaceURI. |
CreateNode(XmlNodeType, String, String) |
Vytvoří se XmlNode zadaným XmlNodeTypeparametrem , Namea NamespaceURI. |
CreateNode(XmlNodeType, String, String, String) |
Vytvoří se XmlNode zadanou XmlNodeTypehodnotou , , NamePrefixa NamespaceURI. |
CreateNode(String, String, String)
Vytvoří typ XmlNode zadaného uzlu Namea NamespaceURI.
public:
virtual System::Xml::XmlNode ^ CreateNode(System::String ^ nodeTypeString, System::String ^ name, System::String ^ namespaceURI);
public virtual System.Xml.XmlNode CreateNode (string nodeTypeString, string name, string namespaceURI);
public virtual System.Xml.XmlNode CreateNode (string nodeTypeString, string name, string? namespaceURI);
abstract member CreateNode : string * string * string -> System.Xml.XmlNode
override this.CreateNode : string * string * string -> System.Xml.XmlNode
Public Overridable Function CreateNode (nodeTypeString As String, name As String, namespaceURI As String) As XmlNode
Parametry
- nodeTypeString
- String
Řetězcová XmlNodeType verze nového uzlu Tento parametr musí být jednou z hodnot uvedených v následující tabulce.
- name
- String
Kvalifikovaný název nového uzlu. Pokud název obsahuje dvojtečku, parsuje se do Prefix a LocalName komponent.
- namespaceURI
- String
Identifikátor URI oboru názvů nového uzlu.
Návraty
Nový XmlNode
.
Výjimky
Název nebyl zadaný a XmlNodeType
vyžaduje název, nebo nodeTypeString
není jedním z níže uvedených řetězců.
Příklady
Následující příklad vytvoří nový prvek a vloží ho do dokumentu.
#using <System.Xml.dll>
using namespace System;
using namespace System::Xml;
int main()
{
XmlDocument^ doc = gcnew XmlDocument;
doc->LoadXml( "<book> <title>Oberon's Legacy</title> <price>5.95</price></book>" );
// Create a new element node.
XmlNode^ newElem = doc->CreateNode( "element", "pages", "" );
newElem->InnerText = "290";
Console::WriteLine( "Add the new element to the document..." );
XmlElement^ root = doc->DocumentElement;
root->AppendChild( newElem );
Console::WriteLine( "Display the modified XML document..." );
Console::WriteLine( doc->OuterXml );
}
using System;
using System.Xml;
public class Sample {
public static void Main() {
XmlDocument doc = new XmlDocument();
doc.LoadXml("<book>" +
" <title>Oberon's Legacy</title>" +
" <price>5.95</price>" +
"</book>");
// Create a new element node.
XmlNode newElem = doc.CreateNode("element", "pages", "");
newElem.InnerText = "290";
Console.WriteLine("Add the new element to the document...");
XmlElement root = doc.DocumentElement;
root.AppendChild(newElem);
Console.WriteLine("Display the modified XML document...");
Console.WriteLine(doc.OuterXml);
}
}
Imports System.Xml
public class Sample
public shared sub Main()
Dim doc as XmlDocument = new XmlDocument()
doc.LoadXml("<book>" & _
" <title>Oberon's Legacy</title>" & _
" <price>5.95</price>" & _
"</book>")
' Create a new element node.
Dim newElem as XmlNode = doc.CreateNode("element", "pages", "")
newElem.InnerText = "290"
Console.WriteLine("Add the new element to the document...")
Dim root as XmlElement = doc.DocumentElement
root.AppendChild(newElem)
Console.WriteLine("Display the modified XML document...")
Console.WriteLine(doc.OuterXml)
end sub
end class
Poznámky
Parametr nodeTypeString
rozlišuje malá a velká písmena a musí být jednou z hodnot v následující tabulce.
nodeTypeString | Xmlnodetype |
---|---|
– atribut | Atribut |
cdatasection | CDATA |
comment | Komentář |
dokument | Dokument |
Documentfragment | Documentfragment |
Documenttype | Documenttype |
– element | Prvek |
Entityreference | EntityReference |
Processinginstruction | Processinginstruction |
significantwhitespace | SignificantWhitespace |
text | Text |
Mezery | Prázdné znaky |
I když tato metoda vytvoří nový objekt v kontextu dokumentu, nepřidá automaticky nový objekt do stromu dokumentu. Chcete-li přidat nový objekt, musíte explicitně volat jednu z metod vložení uzlu.
Následující tabulka ukazuje, co nodeType[row] je povoleno uvnitř jiného NodeType[column] podle doporučení jazyka XML (Extensible Markup Language) W3C 1.0.
Dokument | Documenttype | Xmldeclaration | Prvek | Atribut | Text | CDATA | Kód | EntityReference | |
---|---|---|---|---|---|---|---|---|---|
Document |
ne | ne | ne | ne | ne | ne | ne | ne | ne |
DocumentType |
ano | ne | ne | ne | ne | ne | ne | ne | ne |
XmlDeclaration |
Ano* | ne | ne | ne | ne | ne | ne | ne | ne |
Element |
ano | ne | ne | ano | ne | ne | ne | ne | Ano*** |
Attribute |
ne | ne | ne | Ano**** | ne | ne | ne | ne | ne |
Text |
ne | ne | ne | ano | ano | ne | ne | ne | ano |
CDATA |
ne | ne | ne | ano | ne | ne | ne | ne | Ano*** |
Markup** |
ano | ne | ne | ano | ne | ne | ne | ne | ne |
EntityReference |
ne | ne | ne | ano | ano | ne | ne | ne | ano |
* Uzel XmlDeclaration musí být prvním podřízeným uzlem Dokumentu.
** Revize zahrnuje uzly ProcessingInstruction a Comment.
Uzly Element a CDATA jsou povoleny pouze v uzlech EntityReference, pokud uzel EntityReference není podřízeným uzlem atributu.
Atributy nejsou podřízené uzlu elementu. Atributy jsou obsažené v kolekci atributů, které patří do uzlu elementu.
Tato metoda je rozšířením Microsoftu na model DOM (Document Object Model).
Platí pro
CreateNode(XmlNodeType, String, String)
Vytvoří se XmlNode zadaným XmlNodeTypeparametrem , Namea NamespaceURI.
public:
virtual System::Xml::XmlNode ^ CreateNode(System::Xml::XmlNodeType type, System::String ^ name, System::String ^ namespaceURI);
public virtual System.Xml.XmlNode CreateNode (System.Xml.XmlNodeType type, string name, string namespaceURI);
public virtual System.Xml.XmlNode CreateNode (System.Xml.XmlNodeType type, string name, string? namespaceURI);
abstract member CreateNode : System.Xml.XmlNodeType * string * string -> System.Xml.XmlNode
override this.CreateNode : System.Xml.XmlNodeType * string * string -> System.Xml.XmlNode
Public Overridable Function CreateNode (type As XmlNodeType, name As String, namespaceURI As String) As XmlNode
Parametry
- type
- XmlNodeType
Nový XmlNodeType
uzel.
- name
- String
Kvalifikovaný název nového uzlu. Pokud název obsahuje dvojtečku, parsuje se do Prefix a LocalName komponent.
- namespaceURI
- String
Identifikátor URI oboru názvů nového uzlu.
Návraty
Nový XmlNode
.
Výjimky
Název nebyl zadaný a XmlNodeType
vyžaduje název.
Příklady
Následující příklad vytvoří nový prvek a vloží ho do dokumentu 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;
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.
XmlNode^ elem = doc->CreateNode( XmlNodeType::Element, "price", nullptr );
elem->InnerText = "19.95";
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();
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.
XmlNode elem = doc.CreateNode(XmlNodeType.Element, "price", null);
elem.InnerText = "19.95";
doc.DocumentElement.AppendChild(elem);
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.
Dim elem As XmlNode = doc.CreateNode(XmlNodeType.Element, "price", Nothing)
elem.InnerText = "19.95"
doc.DocumentElement.AppendChild(elem)
Console.WriteLine("Display the modified XML...")
doc.Save(Console.Out)
End Sub
End Class
Poznámky
I když tato metoda vytvoří nový objekt v kontextu dokumentu, nepřidá automaticky nový objekt do stromu dokumentu. Chcete-li přidat nový objekt, musíte explicitně volat jednu z metod vložení uzlu.
Následující tabulka ukazuje, co nodeType[row] je povoleno uvnitř jiného NodeType[column] podle doporučení jazyka XML (Extensible Markup Language) W3C 1.0.
Dokument | Documenttype | Xmldeclaration | Prvek | Atribut | Text | CDATA | Kód | EntityReference | |
---|---|---|---|---|---|---|---|---|---|
Document |
ne | ne | ne | ne | ne | ne | ne | ne | ne |
DocumentType |
ano | ne | ne | ne | ne | ne | ne | ne | ne |
XmlDeclaration |
Ano* | ne | ne | ne | ne | ne | ne | ne | ne |
Element |
ano | ne | ne | ano | ne | ne | ne | ne | Ano*** |
Attribute |
ne | ne | ne | Ano**** | ne | ne | ne | ne | ne |
Text |
ne | ne | ne | ano | ano | ne | ne | ne | ano |
CDATA |
ne | ne | ne | ano | ne | ne | ne | ne | Ano*** |
Markup** |
ano | ne | ne | ano | ne | ne | ne | ne | ne |
EntityReference |
ne | ne | ne | ano | ano | ne | ne | ne | ano |
* Uzel XmlDeclaration musí být první podřízený uzel dokumentu.
** Revize zahrnuje uzly ProcessingInstruction a Comment.
Uzly Element a CDATA jsou povoleny pouze v uzlech EntityReference, pokud uzel EntityReference není podřízeným uzlem atributu.
Atributy nejsou podřízené uzlu elementu. Atributy jsou obsaženy v kolekci atributů, která patří do uzlu elementu.
Tato metoda je rozšířením Microsoftu na model DOM (Document Object Model).
Platí pro
CreateNode(XmlNodeType, String, String, String)
Vytvoří se XmlNode zadanou XmlNodeTypehodnotou , , NamePrefixa NamespaceURI.
public:
virtual System::Xml::XmlNode ^ CreateNode(System::Xml::XmlNodeType type, System::String ^ prefix, System::String ^ name, System::String ^ namespaceURI);
public virtual System.Xml.XmlNode CreateNode (System.Xml.XmlNodeType type, string prefix, string name, string namespaceURI);
public virtual System.Xml.XmlNode CreateNode (System.Xml.XmlNodeType type, string? prefix, string name, string? namespaceURI);
abstract member CreateNode : System.Xml.XmlNodeType * string * string * string -> System.Xml.XmlNode
override this.CreateNode : System.Xml.XmlNodeType * string * string * string -> System.Xml.XmlNode
Public Overridable Function CreateNode (type As XmlNodeType, prefix As String, name As String, namespaceURI As String) As XmlNode
Parametry
- type
- XmlNodeType
Nový XmlNodeType
uzel.
- prefix
- String
Předpona nového uzlu.
- name
- String
Místní název nového uzlu.
- namespaceURI
- String
Identifikátor URI oboru názvů nového uzlu.
Návraty
Nový XmlNode
.
Výjimky
Název nebyl zadaný a XmlNodeType
vyžaduje název.
Příklady
Následující příklad přidá do dokumentu nový prvek.
#using <System.Xml.dll>
using namespace System;
using namespace System::Xml;
int main()
{
XmlDocument^ doc = gcnew XmlDocument;
doc->LoadXml( "<book> <title>Oberon's Legacy</title> <price>5.95</price></book>" );
// Create a new element node.
XmlNode^ newElem;
newElem = doc->CreateNode( XmlNodeType::Element, "g" , "ISBN" , "https://global.ISBN/list" );
newElem->InnerText = "1-861001-57-5";
// Add the new element to the document
XmlElement^ root = doc->DocumentElement;
root->AppendChild( newElem );
// Display the modified XML document
Console::WriteLine( doc->OuterXml );
// Output:
// <book><title>Oberon's Legacy</title><price>5.95</price><g:ISBN xmlns:g="https://global.ISBN/list">1-861001-57-5</g:ISBN></book>
}
using System;
using System.Xml;
public class Sample {
public static void Main() {
// Create a new document containing information about a book
XmlDocument doc = new XmlDocument();
doc.LoadXml("<book>" +
" <title>Oberon's Legacy</title>" +
" <price>5.95</price>" +
"</book>");
// Create a new element node for the ISBN of the book
// It is possible to supply a prefix for this node, and specify a qualified namespace.
XmlNode newElem;
newElem = doc.CreateNode(XmlNodeType.Element, "g", "ISBN", "https://global.ISBN/list");
newElem.InnerText = "1-861001-57-5";
// Add the new element to the document
XmlElement root = doc.DocumentElement;
root.AppendChild(newElem);
// Display the modified XML document
Console.WriteLine(doc.OuterXml);
//Output:
// <book><title>Oberon's Legacy</title><price>5.95</price><g:ISBN xmlns:g="https://global.ISBN/list">1-861001-57-5</g:ISBN></book>
}
}
Imports System.Xml
public class Sample
public shared sub Main()
Dim doc as XmlDocument = new XmlDocument()
doc.LoadXml("<book>" & _
" <title>Oberon's Legacy</title>" & _
" <price>5.95</price>" & _
"</book>")
' Create a new element node.
' It is possible to supply a prefix for this node, and specify a qualified namespace
Dim newElem as XmlNode
newElem = doc.CreateNode(XmlNodeType.Element,"g", "ISBN","https://global.ISBN/list")
newElem.InnerText = "1-861001-57-5"
' Add the new element to the document
Dim root as XmlElement = doc.DocumentElement
root.AppendChild(newElem)
' Display the modified XML document
Console.WriteLine(doc.OuterXml)
' Output:
' <book><title>Oberon's Legacy</title><price>5.95</price><g:ISBN xmlns:g="https://global.ISBN/list">1-861001-57-5</g:ISBN></book>
end sub
end class
Poznámky
I když tato metoda vytvoří nový objekt v kontextu dokumentu, nepřidá automaticky nový objekt do stromu dokumentu. Chcete-li přidat nový objekt, musíte explicitně volat jednu z metod vložení uzlu.
Následující tabulka ukazuje, co je povoleno NodeType[row] uvnitř jiného nodeType[column] podle doporučení W3C Extensible Markup Language (XML) 1.0.
Dokument | Documenttype | Xmldeclaration | Prvek | Atribut | Text | CDATA | Kód | EntityReference | |
---|---|---|---|---|---|---|---|---|---|
Document |
ne | ne | ne | ne | ne | ne | ne | ne | ne |
DocumentType |
ano | ne | ne | ne | ne | ne | ne | ne | ne |
XmlDeclaration |
Ano* | ne | ne | ne | ne | ne | ne | ne | ne |
Element |
ano | ne | ne | ano | ne | ne | ne | ne | Ano*** |
Attribute |
ne | ne | ne | Ano**** | ne | ne | ne | ne | ne |
Text |
ne | ne | ne | ano | ano | ne | ne | ne | ano |
CDATA |
ne | ne | ne | ano | ne | ne | ne | ne | Ano*** |
Markup** |
ano | ne | ne | ano | ne | ne | ne | ne | ne |
EntityReference |
ne | ne | ne | ano | ano | ne | ne | ne | ano |
* Uzel XmlDeclaration musí být první podřízený uzel dokumentu.
** Revize zahrnuje uzly ProcessingInstruction a Comment.
Uzly Element a CDATA jsou povoleny pouze v uzlech EntityReference, pokud uzel EntityReference není podřízeným uzlem atributu.
Atributy nejsou podřízené uzlu elementu. Atributy jsou obsaženy v kolekci atributů, která patří do uzlu elementu.
Tato metoda je rozšířením Microsoftu na model DOM (Document Object Model).