XmlTextWriter::WriteEndDocument Method ()
.NET Framework (current version)
Closes any open elements or attributes and puts the writer back in the Start state.
Assembly: System.Xml (in System.Xml.dll)
| Exception | Condition |
|---|---|
| ArgumentException | The XML document is invalid. |
Note |
|---|
Starting with the .NET Framework 2.0, we recommend that you create XmlWriter instances by using the XmlWriter::Create method and the XmlWriterSettings class to take advantage of new functionality. |
The following example writes an XML file representing a book.
#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 ); }
.NET Framework
Available since 1.1
Available since 1.1
Show:
