XmlTextReader Konstruktory

Definice

Inicializuje novou instanci objektu XmlTextReader.

Přetížení

XmlTextReader()

Inicializuje novou instanci objektu XmlTextReader.

XmlTextReader(String, XmlNodeType, XmlParserContext)

Inicializuje novou instanci XmlTextReader třídy pomocí zadaného řetězce , XmlNodeTypea XmlParserContext.

XmlTextReader(String, TextReader, XmlNameTable)

Inicializuje novou instanci XmlTextReader třídy se zadanou adresou URL TextReader a XmlNameTable.

XmlTextReader(String, Stream, XmlNameTable)

Inicializuje novou instanci XmlTextReader třídy se zadanou adresou URL, datovým proudem a XmlNameTable.

XmlTextReader(Stream, XmlNodeType, XmlParserContext)

Inicializuje novou instanci XmlTextReader třídy se zadaným datovým proudem , XmlNodeTypea XmlParserContext.

XmlTextReader(String, TextReader)

Inicializuje novou instanci XmlTextReader třídy se zadanou adresou URL a TextReader.

XmlTextReader(String, Stream)

Inicializuje novou instanci XmlTextReader třídy se zadanou adresou URL a datovým proudem.

XmlTextReader(String, XmlNameTable)

Inicializuje novou instanci XmlTextReader třídy se zadaným souborem a XmlNameTable.

XmlTextReader(Stream, XmlNameTable)

Inicializuje novou instanci XmlTextReader třídy se zadaným datovým proudem a XmlNameTable.

XmlTextReader(XmlNameTable)

Inicializuje novou instanci XmlTextReader třídy se zadaným XmlNameTableobjektem .

XmlTextReader(String)

Inicializuje novou instanci XmlTextReader třídy pomocí zadaného souboru.

XmlTextReader(TextReader)

Inicializuje novou instanci XmlTextReader třídy se zadaným TextReaderobjektem .

XmlTextReader(Stream)

Inicializuje novou instanci XmlTextReader třídy se zadaným datovým proudem.

XmlTextReader(TextReader, XmlNameTable)

Inicializuje novou instanci XmlTextReader třídy se zadanými TextReader a XmlNameTable.

Poznámky

Poznámka

Počínaje rozhraním .NET Framework 2.0 doporučujeme vytvářet XmlReader instance pomocí XmlReader.Create metody, abyste mohli využívat nové funkce.

XmlTextReader()

Inicializuje novou instanci objektu XmlTextReader.

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

Viz také

Platí pro

XmlTextReader(String, XmlNodeType, XmlParserContext)

Inicializuje novou instanci XmlTextReader třídy pomocí zadaného řetězce , XmlNodeTypea XmlParserContext.

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)

Parametry

xmlFragment
String

Řetězec obsahující fragment XML, který se má analyzovat.

fragType
XmlNodeType

Fragment XmlNodeType XML. To také určuje, co může řetězec fragmentu obsahovat. (Viz následující tabulka.)

context
XmlParserContext

Hodnota XmlParserContext , ve které xmlFragment se má analyzovat. To zahrnuje XmlNameTable použití, kódování, obor názvů, aktuální xml:langa xml:space obor.

Výjimky

fragTypenení , ElementAttributenebo DocumentXmlNodeType.

xmlFragment je null.

Příklady

Následující příklad parsuje fragment XML. Používá a XmlNamespaceManager k zpracování překladu XmlParserContext oboru názvů.

#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

Poznámky

Poznámka

Počínaje rozhraním .NET Framework 2.0 doporučujeme vytvářet XmlReader instance pomocí XmlReader.Create metody, abyste mohli využívat nové funkce.

Tento konstruktor parsuje daný řetězec jako fragment XML. Pokud je fragment XML elementem nebo atributem, můžete obejít pravidla kořenové úrovně pro dokumenty XML ve správném formátu. Tento konstruktor může zpracovávat řetězce vrácené z ReadInnerXml.

Následující tabulka uvádí platné hodnoty pro fragType a způsob, jakým čtenář parsuje každý z různých typů uzlů.

Xmlnodetype Fragment může obsahovat
Prvek Jakýkoli platný obsah elementu (například libovolná kombinace prvků, komentářů, pokynů pro zpracování, oddílů CDATA, textu a odkazů na entity)

Lze také zadat deklaraci XML. To vám umožní určit kódování pro fragment XML, místo abyste ho museli nastavovat na objektu XmlParserContext .
Atribut Hodnota atributu (část uvnitř uvozovek).
Dokument Obsah celého dokumentu XML. Tím se vynucují pravidla na úrovni dokumentu.

Viz také

Platí pro

XmlTextReader(String, TextReader, XmlNameTable)

Inicializuje novou instanci XmlTextReader třídy se zadanou adresou URL TextReader a XmlNameTable.

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)

Parametry

url
String

Adresa URL, která se má použít k překladu externích prostředků. Hodnota BaseURI je nastavená na tuto hodnotu. Pokud url je null, BaseURI je nastavená na String.Emptyhodnotu .

input
TextReader

Obsahující TextReader data XML, která se mají číst.

nt
XmlNameTable

Příkaz XmlNameTable , který se má použít.

Výjimky

Hodnota nt je null.

Poznámky

Poznámka

Počínaje rozhraním .NET Framework 2.0 doporučujeme vytvářet XmlReader instance pomocí XmlReader.Create metody, abyste mohli využívat nové funkce.

Předpokládá se, že TextReader je již nastaven na správné kódování. Používají ho klienti, kteří už přečetli některé věci ze streamu ve scénáři MIME s více částmi.

Viz také

Platí pro

XmlTextReader(String, Stream, XmlNameTable)

Inicializuje novou instanci XmlTextReader třídy se zadanou adresou URL, datovým proudem a XmlNameTable.

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)

Parametry

url
String

Adresa URL, která se má použít k překladu externích prostředků. Hodnota BaseURI je nastavená na tuto hodnotu. Pokud url je null, BaseURI je nastavená na String.Emptyhodnotu .

input
Stream

Datový proud obsahující data XML, která se mají číst.

nt
XmlNameTable

Příkaz XmlNameTable , který se má použít.

Výjimky

Hodnota input nebo nt je null.

Poznámky

Poznámka

Počínaje rozhraním .NET Framework 2.0 doporučujeme vytvářet XmlReader instance pomocí XmlReader.Create metody, abyste mohli využívat nové funkce.

Viz také

Platí pro

XmlTextReader(Stream, XmlNodeType, XmlParserContext)

Inicializuje novou instanci XmlTextReader třídy se zadaným datovým proudem , XmlNodeTypea XmlParserContext.

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)

Parametry

xmlFragment
Stream

Datový proud obsahující fragment XML, který se má analyzovat.

fragType
XmlNodeType

Fragment XmlNodeType XML. To také určuje, co fragment může obsahovat. (Viz následující tabulka.)

context
XmlParserContext

Hodnota XmlParserContext , ve které xmlFragment se má analyzovat. To zahrnuje XmlNameTable použití, kódování, obor názvů, aktuální xml:langa xml:space obor.

Výjimky

fragType není element, atribut nebo dokument XmlNodeType.

xmlFragment je null.

Poznámky

Poznámka

Počínaje rozhraním .NET Framework 2.0 doporučujeme vytvářet XmlReader instance pomocí XmlReader.Create metody, abyste mohli využívat nové funkce.

Tento konstruktor parsuje daný řetězec jako fragment XML. Pokud je fragment XML elementem nebo atributem, můžete obejít pravidla kořenové úrovně pro dokumenty XML ve správném formátu.

Následující tabulka uvádí platné hodnoty pro fragType.

Xmlnodetype Fragment může obsahovat
Element Jakýkoli platný obsah elementu (například libovolná kombinace prvků, komentářů, pokynů pro zpracování, oddílů CDATA, textu a odkazů na entity)

Lze také zadat deklaraci XML. To vám umožní určit kódování pro fragment XML, místo abyste ho museli nastavovat na objektu XmlParserContext .
Attribute Hodnota atributu (část uvnitř uvozovek).
Document Obsah celého dokumentu XML. Tím se vynucují pravidla na úrovni dokumentu.

Čtenář použije k určení kódování datového proudu následující kód.

  1. Zkontroluje XmlParserContext.Encoding vlastnost a určí kódování.

  2. Encoding Pokud je nullvlastnost , čtenář vyhledá značku pořadí bajtů na začátku datového proudu.

  3. Encoding Pokud je nullvlastnost a není nalezena žádná značka pořadí bajtů, čtenář předpokládá, že datový proud je kódován v UTF-8.

Viz také

Platí pro

XmlTextReader(String, TextReader)

Inicializuje novou instanci XmlTextReader třídy se zadanou adresou URL a TextReader.

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)

Parametry

url
String

Adresa URL, která se má použít k překladu externích prostředků. Hodnota BaseURI je nastavená na tuto hodnotu.

input
TextReader

Obsahující TextReader data XML, která se mají číst.

Poznámky

Poznámka

Počínaje rozhraním .NET Framework 2.0 doporučujeme vytvářet XmlReader instance pomocí XmlReader.Create metody, abyste mohli využívat nové funkce.

Předpokládá se, že TextReader je již nastaven na správné kódování. Používají ho klienti, kteří už přečetli některé věci ze streamu ve scénáři MIME s více částmi.

Viz také

Platí pro

XmlTextReader(String, Stream)

Inicializuje novou instanci XmlTextReader třídy se zadanou adresou URL a datovým proudem.

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)

Parametry

url
String

Adresa URL, která se má použít k překladu externích prostředků. Hodnota BaseURI je nastavená na tuto hodnotu.

input
Stream

Datový proud obsahující data XML, která se mají číst.

Výjimky

input je null.

Poznámky

Poznámka

Počínaje rozhraním .NET Framework 2.0 doporučujeme vytvářet XmlReader instance pomocí XmlReader.Create metody, abyste mohli využívat nové funkce.

Viz také

Platí pro

XmlTextReader(String, XmlNameTable)

Inicializuje novou instanci XmlTextReader třídy se zadaným souborem a XmlNameTable.

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)

Parametry

url
String

Adresa URL souboru obsahujícího data XML, která se mají číst.

nt
XmlNameTable

Příkaz XmlNameTable , který se má použít.

Výjimky

Hodnota nt je null.

Zadaný soubor nebyl nalezen.

Část názvu souboru nebo adresáře nebyla nalezena.

url je prázdný řetězec.

Vzdálený název souboru nelze přeložit.

-nebo-

Při zpracování požadavku došlo k chybě.

url není platný identifikátor URI.

Poznámky

Poznámka

Počínaje rozhraním .NET Framework 2.0 doporučujeme vytvářet XmlReader instance pomocí XmlReader.Create metody, abyste mohli využívat nové funkce.

Viz také

Platí pro

XmlTextReader(Stream, XmlNameTable)

Inicializuje novou instanci XmlTextReader třídy se zadaným datovým proudem a XmlNameTable.

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)

Parametry

input
Stream

Datový proud obsahující data XML, která se mají číst.

nt
XmlNameTable

Příkaz XmlNameTable , který se má použít.

Výjimky

Hodnota input nebo nt je null.

Poznámky

Poznámka

Počínaje rozhraním .NET Framework 2.0 doporučujeme vytvářet XmlReader instance pomocí XmlReader.Create metody, abyste mohli využívat nové funkce.

Dekóduje XmlTextReader datový proud pomocí System.Text.Encoding.

Pokud zadáte tabulku názvů, použije tento konstruktor názvy definované již v této tabulce.

Viz také

Platí pro

XmlTextReader(XmlNameTable)

Inicializuje novou instanci XmlTextReader třídy se zadaným XmlNameTableobjektem .

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)

Parametry

nt
XmlNameTable

Příkaz XmlNameTable , který se má použít.

Poznámky

Poznámka

Počínaje rozhraním .NET Framework 2.0 doporučujeme vytvářet XmlReader instance pomocí XmlReader.Create metody, abyste mohli využívat nové funkce.

Viz také

Platí pro

XmlTextReader(String)

Inicializuje novou instanci XmlTextReader třídy pomocí zadaného souboru.

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

Parametry

url
String

Adresa URL souboru obsahujícího data XML. Hodnota BaseURI je nastavená na tuto hodnotu.

Výjimky

Zadaný soubor nebyl nalezen.

Část názvu souboru nebo adresáře nebyla nalezena.

url je prázdný řetězec.

Vzdálený název souboru nelze přeložit.

-nebo-

Při zpracování požadavku došlo k chybě.

url není platný identifikátor URI.

Příklady

Následující příklad přečte soubor XML a zobrazí jednotlivé uzly.

#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

V příkladu se jako vstup používá soubor 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>

Poznámky

Poznámka

Počínaje rozhraním .NET Framework 2.0 doporučujeme vytvářet XmlReader instance pomocí XmlReader.Create metody, abyste mohli využívat nové funkce.

Pokud se soubor nachází na prostředku, který vyžaduje přístupové přihlašovací údaje, zadejte potřebné přihlašovací údaje pomocí XmlResolver vlastnosti .

Poznámka

Ve verzi 1.1 rozhraní .NET Framework částečně důvěryhodný kód nemůže nastavit XmlResolver vlastnost. Alternativním řešením je vytvořit XmlUrlResolver objekt s potřebnými přihlašovacími údaji, předat identifikátor URI metodě XmlUrlResolver.GetEntity a pak vytvořit XmlTextReader objekt pomocí výsledného Stream objektu. Alternativní řešení je popsáno v následujícím kódu jazyka 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);

Viz také

Platí pro

XmlTextReader(TextReader)

Inicializuje novou instanci XmlTextReader třídy se zadaným TextReaderobjektem .

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)

Parametry

input
TextReader

Obsahující TextReader data XML, která se mají číst.

Příklady

Následující příklad načte řetězec XML do objektu XmlTextReader pomocí StringReader třídy.

#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

Poznámky

Poznámka

Počínaje rozhraním .NET Framework 2.0 doporučujeme vytvářet XmlReader instance pomocí XmlReader.Create metody, abyste mohli využívat nové funkce.

Předpokládá se, že TextReader je již nastaven na správné kódování. Používají ho klienti, kteří už přečetli některé věci ze streamu ve scénáři MIME s více částmi.

Viz také

Platí pro

XmlTextReader(Stream)

Inicializuje novou instanci XmlTextReader třídy se zadaným datovým proudem.

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)

Parametry

input
Stream

Datový proud obsahující data XML, která se mají číst.

Výjimky

input je null.

Poznámky

Poznámka

Počínaje rozhraním .NET Framework 2.0 doporučujeme vytvářet XmlReader instance pomocí XmlReader.Create metody, abyste mohli využívat nové funkce.

Dekóduje XmlTextReader datový proud pomocí System.Text.Encoding.

Viz také

Platí pro

XmlTextReader(TextReader, XmlNameTable)

Inicializuje novou instanci XmlTextReader třídy se zadanými TextReader a 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)

Parametry

input
TextReader

Obsahující TextReader data XML, která se mají číst.

nt
XmlNameTable

Příkaz XmlNameTable , který se má použít.

Výjimky

Hodnota nt je null.

Poznámky

Poznámka

Počínaje rozhraním .NET Framework 2.0 doporučujeme vytvářet XmlReader instance pomocí XmlReader.Create metody, abyste mohli využívat nové funkce.

Předpokládá se, že TextReader je již nastaven na správné kódování. Používají ho klienti, kteří už přečetli některé věci ze streamu ve scénáři MIME s více částmi.

Viz také

Platí pro