XmlDocument.CreateNode Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Cria um XmlNode.
Sobrecargas
CreateNode(String, String, String) |
Cria um XmlNode com o tipo de nó especificado, Name e NamespaceURI. |
CreateNode(XmlNodeType, String, String) |
Cria um XmlNode com o XmlNodeType, Name e NamespaceURI especificados. |
CreateNode(XmlNodeType, String, String, String) |
Cria um XmlNode com o XmlNodeType, Prefix, Name e NamespaceURI especificados. |
CreateNode(String, String, String)
Cria um XmlNode com o tipo de nó especificado, Name e 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
Parâmetros
- nodeTypeString
- String
Versão de cadeia de caracteres do XmlNodeType do novo nó. Esse parâmetro deve ser um dos valores listados na tabela a seguir.
- name
- String
O nome qualificado do novo nó. Se o nome contiver dois-pontos, ela será analisada em componentes Prefix e LocalName.
- namespaceURI
- String
O URI do namespace do novo nó.
Retornos
O novo XmlNode
.
Exceções
O nome não foi fornecido e o XmlNodeType
requer um nome ou nodeTypeString
não é uma das cadeias de caracteres listadas abaixo.
Exemplos
O exemplo a seguir cria um novo elemento e o insere no documento.
#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
Comentários
O nodeTypeString
parâmetro diferencia maiúsculas de minúsculas e deve ser um dos valores na tabela a seguir.
nodeTypeString | XmlNodeType |
---|---|
Atributo | Atributo |
Cdatasection | CDATA |
comentário | Comentário |
documento | Document |
Documentfragment | DocumentFragment |
Documenttype | DocumentType |
elemento | Elemento |
Entityreference | EntityReference |
Processinginstruction | ProcessingInstruction |
Significantwhitespace | SignificantWhitespace |
texto | Texto |
espaço em branco | Espaço em branco |
Embora esse método crie o novo objeto no contexto do documento, ele não adiciona automaticamente o novo objeto à árvore de documentos. Para adicionar o novo objeto, você deve chamar explicitamente um dos métodos de inserção de nó.
A tabela a seguir mostra o que NodeType[row] é permitido dentro de outro NodeType[column] de acordo com a recomendação XML (Linguagem de Marcação Extensível) do W3C 1.0.
Document | DocumentType | XmlDeclaration | Elemento | Atributo | Texto | CDATA | Marcação | EntityReference | |
---|---|---|---|---|---|---|---|---|---|
Document |
não | não | não | não | não | não | não | não | não |
DocumentType |
sim | não | não | não | não | não | não | não | não |
XmlDeclaration |
sim* | não | não | não | não | não | não | não | não |
Element |
sim | não | não | sim | não | não | não | não | Sim*** |
Attribute |
não | não | não | Sim**** | não | não | não | não | não |
Text |
não | não | não | sim | sim | não | não | não | sim |
CDATA |
não | não | não | sim | não | não | não | não | Sim*** |
Markup** |
sim | não | não | sim | não | não | não | não | não |
EntityReference |
não | não | não | sim | sim | não | não | não | sim |
* O nó XmlDeclaration deve ser o primeiro filho do nó documento.
** A marcação inclui nós processingInstruction e Comment.
Nós de elemento e CDATA só são permitidos em nós EntityReference quando o nó EntityReference não é filho de um nó attribute.
Os atributos não são filhos de um nó de elemento. Os atributos estão contidos em uma coleção de atributos que pertence a um nó de elemento.
Esse método é uma extensão da Microsoft para o DOM (Modelo de Objeto de Documento).
Aplica-se a
CreateNode(XmlNodeType, String, String)
Cria um XmlNode com o XmlNodeType, Name e NamespaceURI especificados.
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
Parâmetros
- type
- XmlNodeType
O XmlNodeType
do novo nó.
- name
- String
O nome qualificado do novo nó. Se o nome contiver dois-pontos, ele será analisado em componentes Prefix e LocalName.
- namespaceURI
- String
O URI do namespace do novo nó.
Retornos
O novo XmlNode
.
Exceções
O nome não foi fornecido e o XmlNodeType
exige um nome.
Exemplos
O exemplo a seguir cria um novo elemento e o insere em um documento 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
Comentários
Embora esse método crie o novo objeto no contexto do documento, ele não adiciona automaticamente o novo objeto à árvore de documentos. Para adicionar o novo objeto, você deve chamar explicitamente um dos métodos de inserção de nó.
A tabela a seguir mostra o que NodeType[row] é permitido dentro de outro NodeType[column] de acordo com a recomendação XML (Linguagem de Marcação Extensível) do W3C 1.0.
Document | DocumentType | XmlDeclaration | Elemento | Atributo | Texto | CDATA | Marcação | EntityReference | |
---|---|---|---|---|---|---|---|---|---|
Document |
não | não | não | não | não | não | não | não | não |
DocumentType |
sim | não | não | não | não | não | não | não | não |
XmlDeclaration |
sim* | não | não | não | não | não | não | não | não |
Element |
sim | não | não | sim | não | não | não | não | sim*** |
Attribute |
não | não | não | sim**** | não | não | não | não | não |
Text |
não | não | não | sim | sim | não | não | não | sim |
CDATA |
não | não | não | sim | não | não | não | não | sim*** |
Markup** |
sim | não | não | sim | não | não | não | não | não |
EntityReference |
não | não | não | sim | sim | não | não | não | sim |
* O nó XmlDeclaration deve ser o primeiro filho do nó Documento.
** A marcação inclui nós ProcessingInstruction e Comment.
Nós de elemento e CDATA só são permitidos em nós EntityReference quando o nó EntityReference não é filho de um nó attribute.
Os atributos não são filhos de um nó de elemento. Os atributos estão contidos em uma coleção de atributos que pertence a um nó element.
Esse método é uma extensão da Microsoft para o DOM (Modelo de Objeto de Documento).
Aplica-se a
CreateNode(XmlNodeType, String, String, String)
Cria um XmlNode com o XmlNodeType, Prefix, Name e NamespaceURI especificados.
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
Parâmetros
- type
- XmlNodeType
O XmlNodeType
do novo nó.
- prefix
- String
O prefixo do novo nó.
- name
- String
O nome local do novo nó.
- namespaceURI
- String
O URI do namespace do novo nó.
Retornos
O novo XmlNode
.
Exceções
O nome não foi fornecido e o XmlNodeType
exige um nome.
Exemplos
O exemplo a seguir adiciona um novo elemento ao documento.
#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
Comentários
Embora esse método crie o novo objeto no contexto do documento, ele não adiciona automaticamente o novo objeto à árvore de documentos. Para adicionar o novo objeto, você deve chamar explicitamente um dos métodos de inserção de nó.
A tabela a seguir mostra o que NodeType[row] é permitido dentro de outro NodeType[column] de acordo com a recomendação XML (Linguagem de Marcação Extensível) do W3C 1.0.
Document | DocumentType | XmlDeclaration | Elemento | Atributo | Texto | CDATA | Marcação | EntityReference | |
---|---|---|---|---|---|---|---|---|---|
Document |
não | não | não | não | não | não | não | não | não |
DocumentType |
sim | não | não | não | não | não | não | não | não |
XmlDeclaration |
sim* | não | não | não | não | não | não | não | não |
Element |
sim | não | não | sim | não | não | não | não | Sim*** |
Attribute |
não | não | não | Sim**** | não | não | não | não | não |
Text |
não | não | não | sim | sim | não | não | não | sim |
CDATA |
não | não | não | sim | não | não | não | não | Sim*** |
Markup** |
sim | não | não | sim | não | não | não | não | não |
EntityReference |
não | não | não | sim | sim | não | não | não | sim |
* O nó XmlDeclaration deve ser o primeiro filho do nó documento.
** A marcação inclui nós processingInstruction e Comment.
Nós de elemento e CDATA só são permitidos em nós EntityReference quando o nó EntityReference não é filho de um nó attribute.
Os atributos não são filhos de um nó de elemento. Os atributos estão contidos em uma coleção de atributos que pertence ao nó Elemento.
Esse método é uma extensão da Microsoft para o DOM (Modelo de Objeto de Documento).