XmlDocument.CreateXmlDeclaration(String, String, String) Метод

Определение

Создает узел XmlDeclaration с указанными значениями.Creates an XmlDeclaration node with the specified values.

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);
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

Параметры

version
String

Номер версии должен быть равен 1.0.The version must be "1.0".

encoding
String

Значение атрибута кодировки.The value of the encoding attribute. Эта кодировка используется при сохранении XmlDocument в файле или потоке, поэтому она должна быть задана как строка, поддерживаемая классом Encoding. В противном случае в работе Save(String) возникает сбой.This is the encoding that is used when you save the XmlDocument to a file or a stream; therefore, it must be set to a string supported by the Encoding class, otherwise Save(String) fails. Если она имеет значение null или String.Empty, метод Save не записывает атрибут кодировки в объявление XML и используется кодировка UTF-8, заданная по умолчанию.If this is null or String.Empty, the Save method does not write an encoding attribute on the XML declaration and therefore the default encoding, UTF-8, is used.

Примечание. Если XmlDocument сохранен в TextWriter или XmlTextWriter, это значение кодировки не учитывается.Note: If the XmlDocument is saved to either a TextWriter or an XmlTextWriter, this encoding value is discarded. Вместо нее используется кодировка TextWriter или XmlTextWriter.Instead, the encoding of the TextWriter or the XmlTextWriter is used. Таким образом обеспечивается возможность чтения записанного XML в правильной кодировке.This ensures that the XML written out can be read back using the correct encoding.

standalone
String

Значение должно быть равно "yes" или "no".The value must be either "yes" or "no". Если значение равно null или String.Empty, метод Save не записывает в объявление XML отдельный атрибут.If this is null or String.Empty, the Save method does not write a standalone attribute on the XML declaration.

Возвращаемое значение

Новый узел XmlDeclaration.The new XmlDeclaration node.

Исключения

Значения version или standalone немного отличаются от значений, указанных выше.The values of version or standalone are something other than the ones specified above.

Примеры

В следующем примере создается XML-декларация и добавляется в документ.The following example creates an XML declaration and adds it to the document.

#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

Комментарии

Атрибуты предоставляются как специальные свойства на XmlDeclaration узле, а не в качестве XmlAttribute узлов.The attributes are exposed as special properties on the XmlDeclaration node, and not as XmlAttribute nodes.

Несмотря на то, что этот метод создает новый объект в контексте документа, он не добавляет новый объект автоматически в дерево документов.Although this method creates the new object in the context of the document, it does not automatically add the new object to the document tree. Чтобы добавить новый объект, необходимо явным образом вызвать один из методов вставки узла.To add the new object, you must explicitly call one of the node insert methods.

Согласно рекомендациям консорциума W3C язык XML (XML) 1,0, узел XmlDeclaration должен быть первым узлом в документе.According to the W3C Extensible Markup Language (XML) 1.0 recommendation, the XmlDeclaration node must be the first node in the document.

Этот метод является расширением Майкрософт для модель DOM (DOM).This method is a Microsoft extension to the Document Object Model (DOM).

Применяется к

Дополнительно