Udostępnij za pośrednictwem


XmlTextWriter.WriteStartDocument Metoda

Definicja

Zapisuje deklarację XML w wersji "1.0".

Przeciążenia

WriteStartDocument()

Zapisuje deklarację XML w wersji "1.0".

WriteStartDocument(Boolean)

Zapisuje deklarację XML z wersją "1.0" i atrybutem autonomicznym.

Uwagi

Uwaga

Począwszy od .NET Framework 2.0, zalecamy utworzenie XmlWriter wystąpień przy użyciu metody i XmlWriterSettings klasy, aby korzystać z XmlWriter.Create nowych funkcji.

WriteStartDocument()

Zapisuje deklarację XML w wersji "1.0".

public:
 override void WriteStartDocument();
public override void WriteStartDocument ();
override this.WriteStartDocument : unit -> unit
Public Overrides Sub WriteStartDocument ()

Wyjątki

Nie jest to pierwsza metoda zapisu wywoływana po konstruktorze.

Przykłady

Poniższy przykład zapisuje plik XML reprezentujący książkę.

#using <System.Xml.dll>

using namespace System;
using namespace System::IO;
using namespace System::Xml;
int main()
{
   XmlTextWriter^ writer = nullptr;
   String^ filename = "sampledata.xml";
   writer = gcnew XmlTextWriter( filename, nullptr );
   
   //Use indenting for readability.
   writer->Formatting = Formatting::Indented;
   
   //Write the XML delcaration. 
   writer->WriteStartDocument();
   
   //Write the ProcessingInstruction node.
   String^ PItext = "type='text/xsl' href='book.xsl'";
   writer->WriteProcessingInstruction( "xml-stylesheet", PItext );
   
   //Write the DocumentType node.
   writer->WriteDocType( "book", nullptr, nullptr, "<!ENTITY h 'hardcover'>" );
   
   //Write a Comment node.
   writer->WriteComment( "sample XML" );
   
   //Write a root element.
   writer->WriteStartElement( "book" );
   
   //Write the genre attribute.
   writer->WriteAttributeString( "genre", "novel" );
   
   //Write the ISBN attribute.
   writer->WriteAttributeString( "ISBN", "1-8630-014" );
   
   //Write the title.
   writer->WriteElementString( "title", "The Handmaid's Tale" );
   
   //Write the style element.
   writer->WriteStartElement( "style" );
   writer->WriteEntityRef( "h" );
   writer->WriteEndElement();
   
   //Write the price.
   writer->WriteElementString( "price", "19.95" );
   
   //Write CDATA.
   writer->WriteCData( "Prices 15% off!!" );
   
   //Write the close tag for the root element.
   writer->WriteEndElement();
   writer->WriteEndDocument();
   
   //Write the XML to file and close the writer.
   writer->Flush();
   writer->Close();
   
   //Load the file into an XmlDocument to ensure well formed XML.
   XmlDocument^ doc = gcnew XmlDocument;
   
   //Preserve white space for readability.
   doc->PreserveWhitespace = true;
   
   //Load the file.
   doc->Load( filename );
   
   //Display the XML content to the console.
   Console::Write( doc->InnerXml );
}
using System;
using System.IO;
using System.Xml;

public class Sample
{
  private const string filename = "sampledata.xml";

  public static void Main()
  {
     XmlTextWriter writer = null;

     writer = new XmlTextWriter (filename, null);
     //Use indenting for readability.
     writer.Formatting = Formatting.Indented;

     //Write the XML delcaration.
     writer.WriteStartDocument();

     //Write the ProcessingInstruction node.
     String PItext="type='text/xsl' href='book.xsl'";
     writer.WriteProcessingInstruction("xml-stylesheet", PItext);

     //Write the DocumentType node.
     writer.WriteDocType("book", null , null, "<!ENTITY h 'hardcover'>");

     //Write a Comment node.
     writer.WriteComment("sample XML");

     //Write a root element.
     writer.WriteStartElement("book");

     //Write the genre attribute.
     writer.WriteAttributeString("genre", "novel");

     //Write the ISBN attribute.
     writer.WriteAttributeString("ISBN", "1-8630-014");

     //Write the title.
     writer.WriteElementString("title", "The Handmaid's Tale");

     //Write the style element.
     writer.WriteStartElement("style");
     writer.WriteEntityRef("h");
     writer.WriteEndElement();

     //Write the price.
     writer.WriteElementString("price", "19.95");

     //Write CDATA.
     writer.WriteCData("Prices 15% off!!");

     //Write the close tag for the root element.
     writer.WriteEndElement();

     writer.WriteEndDocument();

     //Write the XML to file and close the writer.
     writer.Flush();
     writer.Close();

     //Load the file into an XmlDocument to ensure well formed XML.
     XmlDocument doc = new XmlDocument();
     //Preserve white space for readability.
     doc.PreserveWhitespace = true;
     //Load the file.
     doc.Load(filename);

     //Display the XML content to the console.
     Console.Write(doc.InnerXml);
  }
}
Option Explicit
Option Strict

Imports System.IO
Imports System.Xml

Public Class Sample
    Private Shared filename As String = "sampledata.xml"
    Public Shared Sub Main()
        Dim writer As XmlTextWriter = Nothing
        
        writer = New XmlTextWriter(filename, Nothing)
        'Use indenting for readability.
        writer.Formatting = Formatting.Indented
        
        'Write the XML delcaration. 
        writer.WriteStartDocument()
        
        'Write the ProcessingInstruction node.
        Dim PItext As String = "type='text/xsl' href='book.xsl'"
        writer.WriteProcessingInstruction("xml-stylesheet", PItext)
        
        'Write the DocumentType node.
        writer.WriteDocType("book", Nothing, Nothing, "<!ENTITY h 'hardcover'>")
        
        'Write a Comment node.
        writer.WriteComment("sample XML")
        
        'Write a root element.
        writer.WriteStartElement("book")
        
        'Write the genre attribute.
        writer.WriteAttributeString("genre", "novel")
        
        'Write the ISBN attribute.
        writer.WriteAttributeString("ISBN", "1-8630-014")
        
        'Write the title.
        writer.WriteElementString("title", "The Handmaid's Tale")
        
        'Write the style element.
        writer.WriteStartElement("style")
        writer.WriteEntityRef("h")
        writer.WriteEndElement()
        
        'Write the price.
        writer.WriteElementString("price", "19.95")
        
        'Write CDATA.
        writer.WriteCData("Prices 15% off!!")
        
        'Write the close tag for the root element.
        writer.WriteEndElement()
        
        writer.WriteEndDocument()
        
        'Write the XML to file and close the writer.
        writer.Flush()
        writer.Close()
        
        'Load the file into an XmlDocument to ensure well formed XML.
        Dim doc As New XmlDocument()
        'Preserve white space for readability.
        doc.PreserveWhitespace = True
        'Load the file.
        doc.Load(filename)
        
        'Display the XML content to the console.
        Console.Write(doc.InnerXml)
    End Sub
End Class

Uwagi

Uwaga

Począwszy od .NET Framework 2.0, zalecamy utworzenie XmlWriter wystąpień przy użyciu metody i XmlWriterSettings klasy, aby korzystać z XmlWriter.Create nowych funkcji.

Poziom kodowania dokumentu zależy od sposobu implementacji składnika zapisywania. Jeśli na przykład Encoding obiekt jest określony w konstruktorze XmlTextWriter , określa wartość atrybutu kodowania. Ta metoda nie tworzy atrybutu autonomicznego.

Po WriteStartDocument wywołaniu składnika zapisywania sprawdza, czy to, co piszesz, jest dobrze sformułowanym dokumentem XML. Na przykład sprawdza, czy deklaracja XML jest pierwszym węzłem, że jeden i tylko jeden element poziomu głównego istnieje i tak dalej. Jeśli ta metoda nie jest wywoływana, składnik zapisywania zakłada, że fragment XML jest zapisywany i nie stosuje żadnych reguł poziomu głównego.

Jeśli WriteStartDocument została wywołana, a następnie WriteProcessingInstruction metoda jest używana do utworzenia innej deklaracji XML, zgłaszany jest wyjątek.

Dotyczy

WriteStartDocument(Boolean)

Zapisuje deklarację XML z wersją "1.0" i atrybutem autonomicznym.

public:
 override void WriteStartDocument(bool standalone);
public override void WriteStartDocument (bool standalone);
override this.WriteStartDocument : bool -> unit
Public Overrides Sub WriteStartDocument (standalone As Boolean)

Parametry

standalone
Boolean

Jeśli trueprogram zapisuje ciąg "standalone=yes"; jeśli false, zapisuje ciąg "standalone=no".

Wyjątki

Nie jest to pierwsza metoda zapisu wywoływana po konstruktorze.

Uwagi

Uwaga

Począwszy od .NET Framework 2.0, zalecamy utworzenie XmlWriter wystąpień przy użyciu metody i XmlWriterSettings klasy, aby korzystać z XmlWriter.Create nowych funkcji.

Poziom kodowania dokumentu zależy od sposobu implementacji składnika zapisywania. Jeśli na przykład Encoding obiekt jest określony w konstruktorze XmlTextWriter , określa wartość atrybutu kodowania.

Po WriteStartDocument wywołaniu składnika zapisywania sprawdza, czy to, co piszesz, jest dobrze sformułowanym dokumentem XML. Na przykład sprawdza, czy deklaracja XML jest pierwszym węzłem, że jeden i tylko jeden element poziomu głównego istnieje i tak dalej. Jeśli ta metoda nie jest wywoływana, składnik zapisywania zakłada, że fragment XML jest zapisywany i nie stosuje żadnych reguł poziomu głównego.

Jeśli WriteStartDocument została wywołana, a następnie WriteProcessingInstruction metoda jest używana do utworzenia innej deklaracji XML, zgłaszany jest wyjątek.

Dotyczy