次の方法で共有


XmlTextReader コンストラクター

定義

XmlTextReaderの新しいインスタンスを初期化します。

オーバーロード

XmlTextReader()

XmlTextReaderの新しいインスタンスを初期化します。

XmlTextReader(String, XmlNodeType, XmlParserContext)

指定した文字列、XmlNodeType、および XmlParserContext で、XmlTextReader クラスの新しいインスタンスを初期化します。

XmlTextReader(String, TextReader, XmlNameTable)

指定した URL、TextReader、および XmlNameTable で、XmlTextReader クラスの新しいインスタンスを初期化します。

XmlTextReader(String, Stream, XmlNameTable)

指定した URL、ストリーム、および XmlNameTable で、XmlTextReader クラスの新しいインスタンスを初期化します。

XmlTextReader(Stream, XmlNodeType, XmlParserContext)

指定したストリーム、XmlNodeType および XmlParserContextXmlTextReader クラスの新しいインスタンスを初期化します。

XmlTextReader(String, TextReader)

指定した URL と TextReader で、XmlTextReader クラスの新しいインスタンスを初期化します。

XmlTextReader(String, Stream)

指定した URL とストリームで、XmlTextReader クラスの新しいインスタンスを初期化します。

XmlTextReader(String, XmlNameTable)

指定したファイルと XmlNameTable で、XmlTextReader クラスの新しいインスタンスを初期化します。

XmlTextReader(Stream, XmlNameTable)

指定したストリームと XmlNameTableXmlTextReader クラスの新しいインスタンスを初期化します。

XmlTextReader(XmlNameTable)

XmlTextReader を指定して、XmlNameTable クラスの新しいインスタンスを初期化します。

XmlTextReader(String)

指定したファイルで、XmlTextReader クラスの新しいインスタンスを初期化します。

XmlTextReader(TextReader)

XmlTextReader を指定して、TextReader クラスの新しいインスタンスを初期化します。

XmlTextReader(Stream)

指定したストリームで XmlTextReader クラスの新しいインスタンスを初期化します。

XmlTextReader(TextReader, XmlNameTable)

指定された XmlTextReaderTextReader を使用して、XmlNameTable クラスの新しいインスタンスを初期化します。

注釈

注意

.NET Framework 2.0 以降では、 メソッドを使用してXmlReader.Create新しい機能を利用してインスタンスを作成XmlReaderすることをお勧めします。

XmlTextReader()

ソース:
XmlTextReader.cs
ソース:
XmlTextReader.cs
ソース:
XmlTextReader.cs

XmlTextReaderの新しいインスタンスを初期化します。

protected:
 XmlTextReader();
protected XmlTextReader ();
Protected Sub New ()

こちらもご覧ください

適用対象

XmlTextReader(String, XmlNodeType, XmlParserContext)

ソース:
XmlTextReader.cs
ソース:
XmlTextReader.cs
ソース:
XmlTextReader.cs

指定した文字列、XmlNodeType、および XmlParserContext で、XmlTextReader クラスの新しいインスタンスを初期化します。

public:
 XmlTextReader(System::String ^ xmlFragment, System::Xml::XmlNodeType fragType, System::Xml::XmlParserContext ^ context);
public XmlTextReader (string xmlFragment, System.Xml.XmlNodeType fragType, System.Xml.XmlParserContext? context);
public XmlTextReader (string xmlFragment, System.Xml.XmlNodeType fragType, System.Xml.XmlParserContext context);
new System.Xml.XmlTextReader : string * System.Xml.XmlNodeType * System.Xml.XmlParserContext -> System.Xml.XmlTextReader
Public Sub New (xmlFragment As String, fragType As XmlNodeType, context As XmlParserContext)

パラメーター

xmlFragment
String

解析する XML フラグメントを含んでいる文字列。

fragType
XmlNodeType

XML フラグメントの XmlNodeType。 これもフラグメント文字列に何を含めることができるかを判断します。 下の表を参照してください。

context
XmlParserContext

xmlFragment の解析先の XmlParserContext。 これには、使用する が XmlNameTable 含まれます。エンコード、名前空間スコープ、現在 xml:langの 、スコープです xml:space

例外

fragTypeElementAttribute、または Document のいずれかの XmlNodeType ではありません。

xmlFragmentnullです。

次の例では、XML フラグメントを解析します。 および をXmlNamespaceManager使用XmlParserContextして名前空間の解決を処理します。

#using <System.Xml.dll>

using namespace System;
using namespace System::IO;
using namespace System::Xml;
int main()
{
   
   // Create the XML fragment to be parsed.
   String^ xmlFrag = "<book> <title>Pride And Prejudice</title> <bk:genre>novel</bk:genre> </book>";
   
   // Create the XmlNamespaceManager.
   NameTable^ nt = gcnew NameTable;
   XmlNamespaceManager^ nsmgr = gcnew XmlNamespaceManager( nt );
   nsmgr->AddNamespace( "bk", "urn:sample" );
   
   // Create the XmlParserContext.
   XmlParserContext^ context = gcnew XmlParserContext( nullptr,nsmgr,nullptr,XmlSpace::None );
   
   // Create the reader. 
   XmlTextReader^ reader = gcnew XmlTextReader( xmlFrag,XmlNodeType::Element,context );
   
   // Parse the XML.  If they exist, display the prefix and  
   // namespace URI of each element.
   while ( reader->Read() )
   {
      if ( reader->IsStartElement() )
      {
         if ( reader->Prefix == String::Empty )
                  Console::WriteLine( "< {0}>", reader->LocalName );
         else
         {
            Console::Write( "< {0}: {1}>", reader->Prefix, reader->LocalName );
            Console::WriteLine( " The namespace URI is {0}", reader->NamespaceURI );
         }
      }
   }

   
   // Close the reader.
   reader->Close();
}
using System;
using System.IO;
using System.Xml;

public class Sample
{
  public static void Main()
  {

    //Create the XML fragment to be parsed.
    string xmlFrag ="<book> " +
                    "<title>Pride And Prejudice</title>" +
                    "<bk:genre>novel</bk:genre>" +
                    "</book>";

    //Create the XmlNamespaceManager.
    NameTable nt = new NameTable();
    XmlNamespaceManager nsmgr = new XmlNamespaceManager(nt);
    nsmgr.AddNamespace("bk", "urn:sample");

    //Create the XmlParserContext.
    XmlParserContext context = new XmlParserContext(null, nsmgr, null, XmlSpace.None);

    //Create the reader.
    XmlTextReader reader = new XmlTextReader(xmlFrag, XmlNodeType.Element, context);

    //Parse the XML.  If they exist, display the prefix and
    //namespace URI of each element.
    while (reader.Read()){
      if (reader.IsStartElement()){
        if (reader.Prefix==String.Empty)
                {
                    Console.WriteLine("<{0}>", reader.LocalName);
                }
                else
                {
            Console.Write("<{0}:{1}>", reader.Prefix, reader.LocalName);
            Console.WriteLine(" The namespace URI is " + reader.NamespaceURI);
        }
      }
    }

    //Close the reader.
    reader.Close();
  }
} // End class
Imports System.IO
Imports System.Xml

public class Sample 

  public shared sub Main()

    'Create the XML fragment to be parsed.
    Dim xmlFrag as string ="<book> " & _
                           "<title>Pride And Prejudice</title>" & _
                           "<bk:genre>novel</bk:genre>" & _
                           "</book>" 

    'Create the XmlNamespaceManager.
    Dim nt as NameTable = new NameTable()
    Dim nsmgr as XmlNamespaceManager = new XmlNamespaceManager(nt)
    nsmgr.AddNamespace("bk", "urn:sample")

    'Create the XmlParserContext.
    Dim context as XmlParserContext = new XmlParserContext(nothing, nsmgr, nothing, XmlSpace.None)

    'Create the reader. 
    Dim reader as XmlTextReader = new XmlTextReader(xmlFrag, XmlNodeType.Element, context)
  
    'Parse the XML.  If they exist, display the prefix and  
    'namespace URI of each element.
    while (reader.Read())
      if (reader.IsStartElement())
        if (reader.Prefix=String.Empty)
           Console.WriteLine("<{0}>", reader.LocalName)
        else
            Console.Write("<{0}:{1}>", reader.Prefix, reader.LocalName)
            Console.WriteLine(" The namespace URI is " + reader.NamespaceURI)
        end if 
      end if
    end while
  
    'Close the reader.
    reader.Close()     
  
  end sub
end class

注釈

注意

.NET Framework 2.0 以降では、 メソッドを使用してXmlReader.Create新しい機能を利用してインスタンスを作成XmlReaderすることをお勧めします。

このコンストラクターは、指定された文字列を XML のフラグメントとして解析します。 XML フラグメントが要素または属性の場合は、整形式の XML ドキュメントのルート レベル規則をバイパスできます。 このコンストラクターは、 から ReadInnerXml返された文字列を処理できます。

次の表は、 の fragType 有効な値と、リーダーが各ノードの種類を解析する方法を示しています。

XmlNodeType フラグメントに含まれる可能性がある
要素 任意の有効な要素コンテンツ (たとえば、要素、コメント、処理命令、CDATA セクション、テキスト、エンティティ参照の任意の組み合わせ)。

XML 宣言を渡すこともできます。 これにより、オブジェクトに設定する必要なく、XML フラグメントのエンコードを XmlParserContext 指定できます。
属性 属性の値 (引用符内の部分)。
ドキュメント XML ドキュメント全体のコンテンツ。 これにより、ドキュメント レベルの規則が適用されます。

こちらもご覧ください

適用対象

XmlTextReader(String, TextReader, XmlNameTable)

ソース:
XmlTextReader.cs
ソース:
XmlTextReader.cs
ソース:
XmlTextReader.cs

指定した URL、TextReader、および XmlNameTable で、XmlTextReader クラスの新しいインスタンスを初期化します。

public:
 XmlTextReader(System::String ^ url, System::IO::TextReader ^ input, System::Xml::XmlNameTable ^ nt);
public XmlTextReader (string url, System.IO.TextReader input, System.Xml.XmlNameTable nt);
new System.Xml.XmlTextReader : string * System.IO.TextReader * System.Xml.XmlNameTable -> System.Xml.XmlTextReader
Public Sub New (url As String, input As TextReader, nt As XmlNameTable)

パラメーター

url
String

外部リソースを解決するために使用する URL。 BaseURI は、この値に設定されます。 urlnull の場合、BaseURIString.Empty に設定されます。

input
TextReader

読み取る XML データを格納している TextReader

nt
XmlNameTable

使用する XmlNameTable

例外

nt 値は null です。

注釈

注意

.NET Framework 2.0 以降では、 メソッドを使用してXmlReader.Create新しい機能を利用してインスタンスを作成XmlReaderすることをお勧めします。

TextReader が既に正しいエンコーディングに設定されていることを前提にしています。 これは、マルチパート MIME シナリオでストリームからいくつかのものを既に読み取っているクライアントによって使用されます。

こちらもご覧ください

適用対象

XmlTextReader(String, Stream, XmlNameTable)

ソース:
XmlTextReader.cs
ソース:
XmlTextReader.cs
ソース:
XmlTextReader.cs

指定した URL、ストリーム、および XmlNameTable で、XmlTextReader クラスの新しいインスタンスを初期化します。

public:
 XmlTextReader(System::String ^ url, System::IO::Stream ^ input, System::Xml::XmlNameTable ^ nt);
public XmlTextReader (string url, System.IO.Stream input, System.Xml.XmlNameTable nt);
new System.Xml.XmlTextReader : string * System.IO.Stream * System.Xml.XmlNameTable -> System.Xml.XmlTextReader
Public Sub New (url As String, input As Stream, nt As XmlNameTable)

パラメーター

url
String

外部リソースを解決するために使用する URL。 BaseURI は、この値に設定されます。 urlnull の場合、BaseURIString.Empty に設定されます。

input
Stream

読み取る XML データを格納しているストリーム。

nt
XmlNameTable

使用する XmlNameTable

例外

input または nt の値が null です。

注釈

注意

.NET Framework 2.0 以降では、 メソッドを使用してXmlReader.Create新しい機能を利用してインスタンスを作成XmlReaderすることをお勧めします。

こちらもご覧ください

適用対象

XmlTextReader(Stream, XmlNodeType, XmlParserContext)

ソース:
XmlTextReader.cs
ソース:
XmlTextReader.cs
ソース:
XmlTextReader.cs

指定したストリーム、XmlNodeType および XmlParserContextXmlTextReader クラスの新しいインスタンスを初期化します。

public:
 XmlTextReader(System::IO::Stream ^ xmlFragment, System::Xml::XmlNodeType fragType, System::Xml::XmlParserContext ^ context);
public XmlTextReader (System.IO.Stream xmlFragment, System.Xml.XmlNodeType fragType, System.Xml.XmlParserContext? context);
public XmlTextReader (System.IO.Stream xmlFragment, System.Xml.XmlNodeType fragType, System.Xml.XmlParserContext context);
new System.Xml.XmlTextReader : System.IO.Stream * System.Xml.XmlNodeType * System.Xml.XmlParserContext -> System.Xml.XmlTextReader
Public Sub New (xmlFragment As Stream, fragType As XmlNodeType, context As XmlParserContext)

パラメーター

xmlFragment
Stream

解析する XML フラグメントを含んでいるストリーム。

fragType
XmlNodeType

XML フラグメントの XmlNodeType。 これもフラグメントに何を含めることができるかを判断します。 下の表を参照してください。

context
XmlParserContext

xmlFragment の解析先の XmlParserContext。 これには、使用する が XmlNameTable 含まれます。エンコード、名前空間スコープ、現在 xml:langの 、スコープです xml:space

例外

fragType が Element、Attribute、または Document のいずれかの XmlNodeType ではありません。

xmlFragmentnullです。

注釈

注意

.NET Framework 2.0 以降では、 メソッドを使用してXmlReader.Create新しい機能を利用してインスタンスを作成XmlReaderすることをお勧めします。

このコンストラクターは、指定された文字列を XML のフラグメントとして解析します。 XML フラグメントが要素または属性の場合は、整形式の XML ドキュメントのルート レベル規則をバイパスできます。

次の表に、 の有効な値を fragType示します。

XmlNodeType フラグメントに含まれる可能性がある
Element 任意の有効な要素コンテンツ (たとえば、要素、コメント、処理命令、CDATA セクション、テキスト、エンティティ参照の任意の組み合わせ)。

XML 宣言を渡すこともできます。 これにより、オブジェクトに設定する必要なく、XML フラグメントのエンコードを XmlParserContext 指定できます。
Attribute 属性の値 (引用符内の部分)。
Document XML ドキュメント全体のコンテンツ。 これにより、ドキュメント レベルのルールが適用されます。

リーダーは、次を使用してストリームのエンコードを決定します。

  1. プロパティを XmlParserContext.Encoding 調べてエンコードを決定します。

  2. プロパティが Encoding の場合、リーダーは nullストリームの先頭でバイト順マークをチェックします。

  3. プロパティが Encodingnull、バイト順マークが見つからない場合、リーダーはストリームが UTF-8 でエンコードされていることを前提としています。

こちらもご覧ください

適用対象

XmlTextReader(String, TextReader)

ソース:
XmlTextReader.cs
ソース:
XmlTextReader.cs
ソース:
XmlTextReader.cs

指定した URL と TextReader で、XmlTextReader クラスの新しいインスタンスを初期化します。

public:
 XmlTextReader(System::String ^ url, System::IO::TextReader ^ input);
public XmlTextReader (string url, System.IO.TextReader input);
new System.Xml.XmlTextReader : string * System.IO.TextReader -> System.Xml.XmlTextReader
Public Sub New (url As String, input As TextReader)

パラメーター

url
String

外部リソースを解決するために使用する URL。 BaseURI は、この値に設定されます。

input
TextReader

読み取る XML データを格納している TextReader

注釈

注意

.NET Framework 2.0 以降では、 メソッドを使用してXmlReader.Create新しい機能を利用してインスタンスを作成XmlReaderすることをお勧めします。

TextReader が既に正しいエンコーディングに設定されていることを前提にしています。 これは、マルチパート MIME シナリオでストリームからいくつかの情報を既に読み取っているクライアントによって使用されます。

こちらもご覧ください

適用対象

XmlTextReader(String, Stream)

ソース:
XmlTextReader.cs
ソース:
XmlTextReader.cs
ソース:
XmlTextReader.cs

指定した URL とストリームで、XmlTextReader クラスの新しいインスタンスを初期化します。

public:
 XmlTextReader(System::String ^ url, System::IO::Stream ^ input);
public XmlTextReader (string url, System.IO.Stream input);
new System.Xml.XmlTextReader : string * System.IO.Stream -> System.Xml.XmlTextReader
Public Sub New (url As String, input As Stream)

パラメーター

url
String

外部リソースを解決するために使用する URL。 BaseURI は、この値に設定されます。

input
Stream

読み取る XML データを格納しているストリーム。

例外

inputnullです。

注釈

注意

.NET Framework 2.0 以降では、 メソッドを使用してXmlReader.Create新しい機能を利用してインスタンスを作成XmlReaderすることをお勧めします。

こちらもご覧ください

適用対象

XmlTextReader(String, XmlNameTable)

ソース:
XmlTextReader.cs
ソース:
XmlTextReader.cs
ソース:
XmlTextReader.cs

指定したファイルと XmlNameTable で、XmlTextReader クラスの新しいインスタンスを初期化します。

public:
 XmlTextReader(System::String ^ url, System::Xml::XmlNameTable ^ nt);
public XmlTextReader (string url, System.Xml.XmlNameTable nt);
new System.Xml.XmlTextReader : string * System.Xml.XmlNameTable -> System.Xml.XmlTextReader
Public Sub New (url As String, nt As XmlNameTable)

パラメーター

url
String

読み取る XML データを格納しているファイルの URL。

nt
XmlNameTable

使用する XmlNameTable

例外

nt 値は null です。

指定されたファイルが見つかりません。

ファイル名またはディレクトリの一部が見つかりません。

url が空の文字列です。

リモート ファイル名を解決できません。

- または -

要求の処理中にエラーが発生しました。

url は有効な URI ではありません。

注釈

注意

.NET Framework 2.0 以降では、 メソッドを使用してXmlReader.Create新しい機能を利用してインスタンスを作成XmlReaderすることをお勧めします。

こちらもご覧ください

適用対象

XmlTextReader(Stream, XmlNameTable)

ソース:
XmlTextReader.cs
ソース:
XmlTextReader.cs
ソース:
XmlTextReader.cs

指定したストリームと XmlNameTableXmlTextReader クラスの新しいインスタンスを初期化します。

public:
 XmlTextReader(System::IO::Stream ^ input, System::Xml::XmlNameTable ^ nt);
public XmlTextReader (System.IO.Stream input, System.Xml.XmlNameTable nt);
new System.Xml.XmlTextReader : System.IO.Stream * System.Xml.XmlNameTable -> System.Xml.XmlTextReader
Public Sub New (input As Stream, nt As XmlNameTable)

パラメーター

input
Stream

読み取る XML データを格納しているストリーム。

nt
XmlNameTable

使用する XmlNameTable

例外

input または nt の値が null です。

注釈

注意

.NET Framework 2.0 以降では、 メソッドを使用してXmlReader.Create新しい機能を利用してインスタンスを作成XmlReaderすることをお勧めします。

XmlTextReader を使用して System.Text.Encodingストリームをデコードします。

名前テーブルを指定した場合、このコンストラクターは、そのテーブルに既に定義されている名前を使用します。

こちらもご覧ください

適用対象

XmlTextReader(XmlNameTable)

ソース:
XmlTextReader.cs
ソース:
XmlTextReader.cs
ソース:
XmlTextReader.cs

XmlTextReader を指定して、XmlNameTable クラスの新しいインスタンスを初期化します。

protected:
 XmlTextReader(System::Xml::XmlNameTable ^ nt);
protected XmlTextReader (System.Xml.XmlNameTable nt);
new System.Xml.XmlTextReader : System.Xml.XmlNameTable -> System.Xml.XmlTextReader
Protected Sub New (nt As XmlNameTable)

パラメーター

nt
XmlNameTable

使用する XmlNameTable

注釈

注意

.NET Framework 2.0 以降では、 メソッドを使用してXmlReader.Create新しい機能を利用してインスタンスを作成XmlReaderすることをお勧めします。

こちらもご覧ください

適用対象

XmlTextReader(String)

ソース:
XmlTextReader.cs
ソース:
XmlTextReader.cs
ソース:
XmlTextReader.cs

指定したファイルで、XmlTextReader クラスの新しいインスタンスを初期化します。

public:
 XmlTextReader(System::String ^ url);
public XmlTextReader (string url);
new System.Xml.XmlTextReader : string -> System.Xml.XmlTextReader
Public Sub New (url As String)

パラメーター

url
String

XML データを格納しているファイルの URL。 BaseURI は、この値に設定されます。

例外

指定されたファイルが見つかりません。

ファイル名またはディレクトリの一部が見つかりません。

url が空の文字列です。

リモート ファイル名を解決できません。

- または -

要求の処理中にエラーが発生しました。

url は有効な URI ではありません。

次の例では、XML ファイルを読み取り、各ノードを表示します。

#using <System.Xml.dll>

using namespace System;
using namespace System::IO;
using namespace System::Xml;
int main()
{
   XmlTextReader^ reader = nullptr;
   String^ filename = "items.xml";
   try
   {
      
      // Load the reader with the data file and ignore all white space nodes.         
      reader = gcnew XmlTextReader( filename );
      reader->WhitespaceHandling = WhitespaceHandling::None;
      
      // Parse the file and display each of the nodes.
      while ( reader->Read() )
      {
         switch ( reader->NodeType )
         {
            case XmlNodeType::Element:
               Console::Write( "<{0}>", reader->Name );
               break;

            case XmlNodeType::Text:
               Console::Write( reader->Value );
               break;

            case XmlNodeType::CDATA:
               Console::Write( "<![CDATA[{0}]]>", reader->Value );
               break;

            case XmlNodeType::ProcessingInstruction:
               Console::Write( "<?{0} {1}?>", reader->Name, reader->Value );
               break;

            case XmlNodeType::Comment:
               Console::Write( "<!--{0}-->", reader->Value );
               break;

            case XmlNodeType::XmlDeclaration:
               Console::Write( "<?xml version='1.0'?>" );
               break;

            case XmlNodeType::Document:
               break;

            case XmlNodeType::DocumentType:
               Console::Write( "<!DOCTYPE {0} [{1}]", reader->Name, reader->Value );
               break;

            case XmlNodeType::EntityReference:
               Console::Write( reader->Name );
               break;

            case XmlNodeType::EndElement:
               Console::Write( "</{0}>", reader->Name );
               break;
         }
      }
   }
   finally
   {
      if ( reader != nullptr )
            reader->Close();
   }

}
using System;
using System.IO;
using System.Xml;

public class Sample {

  private const String filename = "items.xml";

  public static void Main() {

     XmlTextReader reader = null;

     try {

        // Load the reader with the data file and ignore all white space nodes.
        reader = new XmlTextReader(filename);
        reader.WhitespaceHandling = WhitespaceHandling.None;

        // Parse the file and display each of the nodes.
        while (reader.Read()) {
           switch (reader.NodeType) {
             case XmlNodeType.Element:
               Console.Write("<{0}>", reader.Name);
               break;
             case XmlNodeType.Text:
               Console.Write(reader.Value);
               break;
             case XmlNodeType.CDATA:
               Console.Write("<![CDATA[{0}]]>", reader.Value);
               break;
             case XmlNodeType.ProcessingInstruction:
               Console.Write("<?{0} {1}?>", reader.Name, reader.Value);
               break;
             case XmlNodeType.Comment:
               Console.Write("<!--{0}-->", reader.Value);
               break;
             case XmlNodeType.XmlDeclaration:
               Console.Write("<?xml version='1.0'?>");
               break;
             case XmlNodeType.Document:
               break;
             case XmlNodeType.DocumentType:
               Console.Write("<!DOCTYPE {0} [{1}]", reader.Name, reader.Value);
               break;
             case XmlNodeType.EntityReference:
               Console.Write(reader.Name);
               break;
             case XmlNodeType.EndElement:
               Console.Write("</{0}>", reader.Name);
               break;
           }
        }
     }

     finally {
        if (reader!=null)
          reader.Close();
     }
  }
} // End class
Option Strict
Option Explicit

Imports System.IO
Imports System.Xml

'Reads an XML document
Public Class Sample
    Private Const filename As String = "items.xml"
    
    Public Shared Sub Main()
        Dim reader As XmlTextReader = Nothing
        
        Try
            ' Load the reader with the data file and ignore all white space nodes.         
            reader = New XmlTextReader(filename)
            reader.WhitespaceHandling = WhitespaceHandling.None
            
            ' Parse the file and display each of the nodes.
            While reader.Read()
                Select Case reader.NodeType
                    Case XmlNodeType.Element
                        Console.Write("<{0}>", reader.Name)
                    Case XmlNodeType.Text
                        Console.Write(reader.Value)
                    Case XmlNodeType.CDATA
                        Console.Write("<![CDATA[{0}]]>", reader.Value)
                    Case XmlNodeType.ProcessingInstruction
                        Console.Write("<?{0} {1}?>", reader.Name, reader.Value)
                    Case XmlNodeType.Comment
                        Console.Write("<!--{0}-->", reader.Value)
                    Case XmlNodeType.XmlDeclaration
                        Console.Write("<?xml version='1.0'?>")
                    Case XmlNodeType.Document
                    Case XmlNodeType.DocumentType
                        Console.Write("<!DOCTYPE {0} [{1}]", reader.Name, reader.Value)
                    Case XmlNodeType.EntityReference
                        Console.Write(reader.Name)
                    Case XmlNodeType.EndElement
                        Console.Write("</{0}>", reader.Name)
                End Select
            End While
        
        Finally
            If Not (reader Is Nothing) Then
                reader.Close()
            End If
        End Try
    End Sub
End Class

この例では、 items.xmlファイル の を入力として使用します。


<?xml version="1.0"?>
<!-- This is a sample XML document -->
<!DOCTYPE Items [<!ENTITY number "123">]>
<Items>
  <Item>Test with an entity: &number;</Item>
  <Item>test with a child element <more/> stuff</Item>
  <Item>test with a CDATA section <![CDATA[<456>]]> def</Item>
  <Item>Test with an char entity: A</Item>
  <!-- Fourteen chars in this element.-->
  <Item>1234567890ABCD</Item>
</Items>

注釈

注意

.NET Framework 2.0 以降では、 メソッドを使用してXmlReader.Create新しい機能を利用してインスタンスを作成XmlReaderすることをお勧めします。

ファイルがアクセス資格情報を必要とするリソースにある場合は、 プロパティを XmlResolver 使用して必要な資格情報を指定します。

注意

.NET Frameworkのバージョン 1.1 では、部分的に信頼されたコードで プロパティをXmlResolver設定できません。 回避策は、必要な資格情報を使用して をXmlUrlResolver作成し、URI を メソッドにXmlUrlResolver.GetEntity渡し、結果の Stream オブジェクトを使用して をXmlTextReader構築することです。 回避策については、次の C# コードで説明します。

// Create a resolver with the necessary credentials.
XmlUrlResolver resolver = new XmlUrlResolver();
NetworkCredential nc = new NetworkCredential(SecurelyStoredUserName, SecurelyStoredPassword, SecurelyStoredDomain);
resolver.Credentials = nc;
// Get a Stream object containing the XML file.
Uri myUri = new Uri ("http://myServer/data/books.xml");
Stream s=(Stream)resolver.GetEntity(myUri, null, typeof(Stream));
// Construct a reader using the Stream object.
XmlTextReader reader = new XmlTextReader(s);

こちらもご覧ください

適用対象

XmlTextReader(TextReader)

ソース:
XmlTextReader.cs
ソース:
XmlTextReader.cs
ソース:
XmlTextReader.cs

XmlTextReader を指定して、TextReader クラスの新しいインスタンスを初期化します。

public:
 XmlTextReader(System::IO::TextReader ^ input);
public XmlTextReader (System.IO.TextReader input);
new System.Xml.XmlTextReader : System.IO.TextReader -> System.Xml.XmlTextReader
Public Sub New (input As TextReader)

パラメーター

input
TextReader

読み取る XML データを格納している TextReader

次の例では、 クラスを使用して XML 文字列を XmlTextReader オブジェクトに StringReader 読み込みます。

#using <System.Xml.dll>

using namespace System;
using namespace System::IO;
using namespace System::Xml;
int main()
{
   String^ xmlData = "<book>\r\n       <title>Oberon's Legacy</title>\r\n       <price>5.95</price>\r\n      </book>";
   
   // Create the reader.
   XmlTextReader^ reader = gcnew XmlTextReader( gcnew StringReader( xmlData ) );
   reader->WhitespaceHandling = WhitespaceHandling::None;
   
   // Display each element node.
   while ( reader->Read() )
   {
      switch ( reader->NodeType )
      {
         case XmlNodeType::Element:
            Console::Write( "<{0}>", reader->Name );
            break;

         case XmlNodeType::Text:
            Console::Write( reader->Value );
            break;

         case XmlNodeType::EndElement:
            Console::Write( "</{0}>", reader->Name );
            break;
      }
   }

   
   // Close the reader.
   reader->Close();
}
using System;
using System.IO;
using System.Xml;

public class Sample {

  public static void Main() {

    string xmlData =
    @"<book>
       <title>Oberon's Legacy</title>
       <price>5.95</price>
      </book>";

    // Create the reader.
    XmlTextReader reader = new XmlTextReader(new StringReader(xmlData));
    reader.WhitespaceHandling = WhitespaceHandling.None;

    // Display each element node.
    while (reader.Read()){
       switch (reader.NodeType){
         case XmlNodeType.Element:
           Console.Write("<{0}>", reader.Name);
           break;
         case XmlNodeType.Text:
           Console.Write(reader.Value);
           break;
         case XmlNodeType.EndElement:
           Console.Write("</{0}>", reader.Name);
           break;
      }
    }

    // Close the reader.
    reader.Close();
  }
} // End class
Imports System.IO
Imports System.Xml

public class Sample 

  public shared sub Main()

    Dim xmlData as string 
    xmlData = "<book>" & _
              "  <title>Oberon's Legacy</title>" & _
              "  <price>5.95</price>" & _
              "</book>"

    ' Create the reader.
    Dim reader as XmlTextReader = new XmlTextReader(new StringReader(xmlData))
    reader.WhitespaceHandling = WhitespaceHandling.None

    ' Display each element node.
    while reader.Read()
       select case reader.NodeType
         case XmlNodeType.Element
           Console.Write("<{0}>", reader.Name)
         case XmlNodeType.Text
           Console.Write(reader.Value)
         case XmlNodeType.EndElement
           Console.Write("</{0}>", reader.Name)
       end select       
    end while           

    ' Close the reader.
    reader.Close()       
  end sub
end class

注釈

注意

.NET Framework 2.0 以降では、 メソッドを使用してXmlReader.Create新しい機能を利用してインスタンスを作成XmlReaderすることをお勧めします。

TextReader が既に正しいエンコーディングに設定されていることを前提にしています。 これは、マルチパート MIME シナリオでストリームからいくつかの情報を既に読み取っているクライアントによって使用されます。

こちらもご覧ください

適用対象

XmlTextReader(Stream)

ソース:
XmlTextReader.cs
ソース:
XmlTextReader.cs
ソース:
XmlTextReader.cs

指定したストリームで XmlTextReader クラスの新しいインスタンスを初期化します。

public:
 XmlTextReader(System::IO::Stream ^ input);
public XmlTextReader (System.IO.Stream input);
new System.Xml.XmlTextReader : System.IO.Stream -> System.Xml.XmlTextReader
Public Sub New (input As Stream)

パラメーター

input
Stream

読み取る XML データを格納しているストリーム。

例外

inputnullです。

注釈

注意

.NET Framework 2.0 以降では、 メソッドを使用してXmlReader.Create新しい機能を利用してインスタンスを作成XmlReaderすることをお勧めします。

XmlTextReader を使用して System.Text.Encodingストリームをデコードします。

こちらもご覧ください

適用対象

XmlTextReader(TextReader, XmlNameTable)

ソース:
XmlTextReader.cs
ソース:
XmlTextReader.cs
ソース:
XmlTextReader.cs

指定された XmlTextReaderTextReader を使用して、XmlNameTable クラスの新しいインスタンスを初期化します。

public:
 XmlTextReader(System::IO::TextReader ^ input, System::Xml::XmlNameTable ^ nt);
public XmlTextReader (System.IO.TextReader input, System.Xml.XmlNameTable nt);
new System.Xml.XmlTextReader : System.IO.TextReader * System.Xml.XmlNameTable -> System.Xml.XmlTextReader
Public Sub New (input As TextReader, nt As XmlNameTable)

パラメーター

input
TextReader

読み取る XML データを格納している TextReader

nt
XmlNameTable

使用する XmlNameTable

例外

nt の値は null です。

注釈

注意

.NET Framework 2.0 以降では、 メソッドを使用してXmlReader.Create新しい機能を利用してインスタンスを作成XmlReaderすることをお勧めします。

TextReader が既に正しいエンコーディングに設定されていることを前提にしています。 これは、マルチパート MIME シナリオでストリームからいくつかの情報を既に読み取っているクライアントによって使用されます。

こちらもご覧ください

適用対象