XmlDocument.CreateXmlDeclaration(String, String, String) Método

Definición

Crea un nodo XmlDeclaration con los valores especificados.

public:
 virtual System::Xml::XmlDeclaration ^ CreateXmlDeclaration(System::String ^ version, System::String ^ encoding, System::String ^ standalone);
public virtual System.Xml.XmlDeclaration CreateXmlDeclaration (string version, string encoding, string standalone);
public virtual System.Xml.XmlDeclaration CreateXmlDeclaration (string version, string? encoding, string? standalone);
abstract member CreateXmlDeclaration : string * string * string -> System.Xml.XmlDeclaration
override this.CreateXmlDeclaration : string * string * string -> System.Xml.XmlDeclaration
Public Overridable Function CreateXmlDeclaration (version As String, encoding As String, standalone As String) As XmlDeclaration

Parámetros

version
String

La versión debe ser "1.0".

encoding
String

Valor del atributo de codificación. Es la codificación que se usa cuando se guarda XmlDocument en un archivo o en un flujo; por tanto, se debe establecer en una cadena admitida por la clase Encoding ya que, en caso contrario, Save(String) produce un error. Si es null o String.Empty, el método Save no escribe un atributo de codificación en la declaración XML y, por tanto, se usa la codificación predeterminada, UTF-8.

Nota: Si XmlDocument se guarda en TextWriter o en XmlTextWriter, se descartará este valor de codificación. En su lugar, se usa la codificación de TextWriter o de XmlTextWriter . De este modo se garantiza que el fragmento XML que se escribe se puede volver a leer usando la codificación correcta.

standalone
String

Este valor debe ser "yes" o "no". Si es null o String.Empty, el método Save no escribe un atributo independiente en la declaración XML.

Devoluciones

Nuevo nodo XmlDeclaration.

Excepciones

Los valores de version o standalone son algo diferentes de los especificados anteriormente.

Ejemplos

En el ejemplo siguiente se crea una declaración XML y se agrega al documento.

#using <System.Xml.dll>

using namespace System;
using namespace System::IO;
using namespace System::Xml;
int main()
{
   XmlDocument^ doc = gcnew XmlDocument;
   doc->LoadXml( "<book genre='novel' ISBN='1-861001-57-5'><title>Pride And Prejudice</title></book>" );
   
   //Create an XML declaration. 
   XmlDeclaration^ xmldecl;
   xmldecl = doc->CreateXmlDeclaration( "1.0", nullptr, nullptr );
   
   //Add the new node to the document.
   XmlElement^ root = doc->DocumentElement;
   doc->InsertBefore( xmldecl, root );
   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()
  {
    XmlDocument doc = new XmlDocument();
    doc.LoadXml("<book genre='novel' ISBN='1-861001-57-5'>" +
                "<title>Pride And Prejudice</title>" +
                "</book>");

    //Create an XML declaration.
    XmlDeclaration xmldecl;
    xmldecl = doc.CreateXmlDeclaration("1.0",null,null);

    //Add the new node to the document.
    XmlElement root = doc.DocumentElement;
    doc.InsertBefore(xmldecl, root);

    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()
        Dim doc As New XmlDocument()
        doc.LoadXml("<book genre='novel' ISBN='1-861001-57-5'>" & _
                    "<title>Pride And Prejudice</title>" & _
                    "</book>")
        
        'Create an XML declaration. 
        Dim xmldecl As XmlDeclaration
        xmldecl = doc.CreateXmlDeclaration("1.0", Nothing, Nothing)
        
        'Add the new node to the document.
        Dim root As XmlElement = doc.DocumentElement
        doc.InsertBefore(xmldecl, root)
        
        Console.WriteLine("Display the modified XML...")
        doc.Save(Console.Out)
    End Sub
End Class

Comentarios

Los atributos se exponen como propiedades especiales en el XmlDeclaration nodo y no como XmlAttribute nodos.

Aunque este método crea el nuevo objeto en el contexto del documento, no agrega automáticamente el nuevo objeto al árbol de documentos. Para agregar el nuevo objeto, debe llamar explícitamente a uno de los métodos de inserción de nodo.

Según la recomendación W3C Extensible Markup Language (XML) 1.0, el XmlDeclaration nodo debe ser el primer nodo del documento.

Este método es una extensión Microsoft al Modelo de objetos de documento (DOM).

Se aplica a

Consulte también