XmlTextWriter.WriteDocType メソッド
名前とオプション属性を指定して、DOCTYPE 宣言を書き込みます。
Overrides Public Sub WriteDocType( _
ByVal name As String, _ ByVal pubid As String, _ ByVal sysid As String, _ ByVal subset As String _)
[C#]
public override void WriteDocType(stringname,stringpubid,stringsysid,stringsubset);
[C++]
public: void WriteDocType(String* name,String* pubid,String* sysid,String* subset);
[JScript]
public override function WriteDocType(
name : String,pubid : String,sysid : String,subset : String);
パラメータ
- name
DOCTYPE の名前。これを空にすることはできません。 - pubid
null でない場合は、PUBLIC "pubid" "sysid" も書き込みます。pubid と sysid は、指定した引数の値に置き換えられます。 - sysid
pubid が null で sysid が非 null の場合は、sysid が引数の値に置き換えられる SYSTEM "sysid" を書き込みます。 - subset
非 null の場合は、subset が引数の値で置き換えられる [subset] を書き込みます。
例外
例外の種類 | 条件 |
---|---|
InvalidOperationException | このメソッドが、プロローグの外 (ルート要素の後) で呼び出されました。 |
ArgumentException | name が null 参照 (Visual Basic では Nothing) または String.Empty です。
または name の値が、無効な XML になることがあります。 |
解説
このメソッドは、 pubid, sysid または subset に無効な文字があるかどうかを確認しません。
使用例
[Visual Basic, C#, C++] book を表す XML ファイルを書き込む例を次に示します。
Option Explicit
Option Strict
Imports System
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 'Main
End Class 'Sample
[C#]
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);
}
}
[C++]
#using <mscorlib.dll>
#using <System.Xml.dll>
using namespace System;
using namespace System::IO;
using namespace System::Xml;
int main()
{
XmlTextWriter* writer = 0;
String* filename = S"sampledata.xml";
writer = new XmlTextWriter (filename, 0);
//Use indenting for readability.
writer->Formatting = Formatting::Indented;
//Write the XML delcaration.
writer->WriteStartDocument();
//Write the ProcessingInstruction node.
String* PItext=S"type='text/xsl' href='book.xsl'";
writer->WriteProcessingInstruction(S"xml-stylesheet", PItext);
//Write the DocumentType node.
writer->WriteDocType(S"book", 0 , 0, S"<!ENTITY h 'hardcover'>");
//Write a Comment node.
writer->WriteComment(S"sample XML");
//Write a root element.
writer->WriteStartElement(S"book");
//Write the genre attribute.
writer->WriteAttributeString(S"genre", S"novel");
//Write the ISBN attribute.
writer->WriteAttributeString(S"ISBN", S"1-8630-014");
//Write the title.
writer->WriteElementString(S"title", S"The Handmaid's Tale");
//Write the style element.
writer->WriteStartElement(S"style");
writer->WriteEntityRef(S"h");
writer->WriteEndElement();
//Write the price.
writer->WriteElementString(S"price", S"19.95");
//Write CDATA.
writer->WriteCData(S"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);
}
[JScript] JScript のサンプルはありません。Visual Basic、C#、および C++ のサンプルを表示するには、このページの左上隅にある言語のフィルタ ボタン をクリックします。
必要条件
プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ, .NET Compact Framework - Windows CE .NET, Common Language Infrastructure (CLI) Standard