XmlTextWriter.WriteDocType(String, String, String, String) Metode
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Menulis deklarasi DOCTYPE dengan nama dan atribut opsional yang ditentukan.
public:
override void WriteDocType(System::String ^ name, System::String ^ pubid, System::String ^ sysid, System::String ^ subset);
public override void WriteDocType(string name, string? pubid, string? sysid, string? subset);
public override void WriteDocType(string name, string pubid, string sysid, string subset);
override this.WriteDocType : string * string * string * string -> unit
Public Overrides Sub WriteDocType (name As String, pubid As String, sysid As String, subset As String)
Parameter
- name
- String
Nama DOCTYPE. Ini harus tidak kosong.
- pubid
- String
Jika non-null, ia juga menulis "pubid" PUBLIK "sysid" di mana pubid dan sysid diganti dengan nilai argumen yang diberikan.
- sysid
- String
Jika pubid null dan sysid bukan null, sistem akan menulis "sysid" SISTEM di mana sysid diganti dengan nilai argumen ini.
- subset
- String
Jika non-null, itu menulis [subset] di mana subset diganti dengan nilai argumen ini.
Pengecualian
Metode ini dipanggil di luar prolog (setelah elemen akar).
name
null atau String.Empty
-atau-
nilai untuk name akan menghasilkan XML yang tidak valid.
Contoh
Contoh berikut menulis file XML yang mewakili buku.
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
Keterangan
Note
Kami menyarankan agar Anda membuat XmlWriter instans dengan menggunakan XmlWriter.Create metode dan XmlWriterSettings kelas untuk memanfaatkan fungsionalitas baru.
Metode ini tidak memeriksa karakter yang tidak valid dalam pubid, sysid atau subset. Ini juga tidak memeriksa bahwa subset internal terbentuk dengan baik.
Important
XmlTextWriter tidak memvalidasi data apa pun yang diteruskan ke WriteDocType metode . Anda tidak boleh meneruskan data arbitrer ke metode ini.