XmlWriter.WriteProcessingInstruction メソッドとは? わかりやすく解説

Weblio 辞書 > コンピュータ > .NET Framework クラス ライブラリ リファレンス > XmlWriter.WriteProcessingInstruction メソッドの意味・解説 

XmlWriter.WriteProcessingInstruction メソッド

派生クラスでオーバーライドされると、<?name text?> など、名前とテキストの間に空白が入った処理命令を書き込みます。

名前空間: System.Xml
アセンブリ: System.Xml (system.xml.dll 内)
構文構文

Public MustOverride Sub
 WriteProcessingInstruction ( _
    name As String, _
    text As String _
)
Dim instance As XmlWriter
Dim name As String
Dim text As String

instance.WriteProcessingInstruction(name, text)
public abstract void WriteProcessingInstruction
 (
    string name,
    string text
)
public:
virtual void WriteProcessingInstruction (
    String^ name, 
    String^ text
) abstract
public abstract void WriteProcessingInstruction
 (
    String name, 
    String text
)
public abstract function WriteProcessingInstruction
 (
    name : String, 
    text : String
)

パラメータ

name

処理命令の名前。

text

処理命令に含めるテキスト。

例外例外
例外の種類条件

ArgumentException

テキストは、非整形式の XML ドキュメントになります。

name が null 参照 (Visual Basic では Nothing) または String.Empty のいずれかです。

このメソッドは、WriteStartDocument が呼び出された後に XML 宣言を作成するために使用されています。

解説解説

このメソッドを使用して、WriteStartDocument ではなく XML 宣言を書き込むことができます。このため、エンコーディング属性が正しく書き込まれない場合があります。たとえば、次の C# コードでは、既定のエンコーディングが UTF-8 であるため、無効な XML ドキュメントが生成されます。

XmlWriter writer = XmlWriter.Create("output.xml");
writer.WriteProcessingInstruction("xml", "version='1.0', encoding='UTF-16'");
writer.WriteStartElement("root");
writer.Close();

text が null 参照 (Visual Basic では Nothing) または String.Empty の場合、このメソッドは、<?name?> などの、データの内容を含まない ProcessingInstruction を書き込みます。

テキストに "?>" の無効なシーケンスが含まれている場合、XmlWriter が ArgumentException (XmlTextWriter オブジェクト) をスローするか、または "?>" のように空白を挿入して、無効な XML (Create メソッドで作成された XmlWriter オブジェクト) の書き込みを防止します。

使用例使用例

book を表す XML ファイルを書き込む例を次に示します。

Option Strict
Option Explicit

Imports System
Imports System.IO
Imports System.Xml

Public Class Sample
    Private Const filename As
 String = "sampledata.xml"
    
  Public Shared Sub Main()

     Dim settings As XmlWriterSettings = new
 XmlWriterSettings()
     settings.Indent = true
     Dim writer As XmlWriter = XmlWriter.Create(filename,
 settings)
        
     ' Write the Processing Instruction 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 the 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()
        
    End Sub 'Main 
End Class 'Sample
using System;
using System.IO;
using System.Xml;

public class Sample {

  private const string filename
 = "sampledata.xml";

  public static void Main()
 {
  
     XmlWriterSettings settings = new XmlWriterSettings();
     settings.Indent = true;
     XmlWriter writer = XmlWriter.Create(filename, settings);

     // Write the Processing Instruction 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 the 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();  
  }

}
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照



英和和英テキスト翻訳

英語⇒日本語日本語⇒英語

辞書ショートカット

すべての辞書の索引

XmlWriter.WriteProcessingInstruction メソッドのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



XmlWriter.WriteProcessingInstruction メソッドのページの著作権

   
日本マイクロソフト株式会社日本マイクロソフト株式会社
© 2026 Microsoft.All rights reserved.

©2026 GRAS Group, Inc.RSS