XmlTextReader Constructores

Definición

Inicializa una nueva instancia de XmlTextReader.

Sobrecargas

XmlTextReader()

Inicializa una nueva instancia de XmlTextReader.

XmlTextReader(String, XmlNodeType, XmlParserContext)

Inicializa una nueva instancia de la clase XmlTextReader con la cadena y los objetos XmlNodeType y XmlParserContext especificados.

XmlTextReader(String, TextReader, XmlNameTable)

Inicializa una nueva instancia de la clase XmlTextReader con la dirección URL y los objetos TextReader y XmlNameTable especificados.

XmlTextReader(String, Stream, XmlNameTable)

Inicializa una nueva instancia de la clase XmlTextReader con la dirección URL, el flujo y la XmlNameTable especificados.

XmlTextReader(Stream, XmlNodeType, XmlParserContext)

Inicializa una nueva instancia de la clase XmlTextReader con el flujo especificado, XmlNodeType y XmlParserContext.

XmlTextReader(String, TextReader)

Inicializa una nueva instancia de la clase XmlTextReader con la dirección URL y el TextReader especificados.

XmlTextReader(String, Stream)

Inicializa una nueva instancia de la clase XmlTextReader con la dirección URL y el flujo especificados.

XmlTextReader(String, XmlNameTable)

Inicializa una nueva instancia de la clase XmlTextReader con el archivo y el objeto XmlNameTable especificados.

XmlTextReader(Stream, XmlNameTable)

Inicializa una nueva instancia de la clase XmlTextReader con el flujo especificado y XmlNameTable.

XmlTextReader(XmlNameTable)

Inicializa una nueva instancia de la clase XmlTextReader con el objeto XmlNameTable especificado.

XmlTextReader(String)

Inicializa una nueva instancia de la clase XmlTextReader con el archivo especificado.

XmlTextReader(TextReader)

Inicializa una nueva instancia de la clase XmlTextReader con el objeto TextReader especificado.

XmlTextReader(Stream)

Inicializa una nueva instancia de la clase XmlTextReader con el flujo especificado.

XmlTextReader(TextReader, XmlNameTable)

Inicializa una nueva instancia de la clase XmlTextReader con los parámetros TextReader y XmlNameTable especificados.

Comentarios

Nota

A partir de .NET Framework 2.0, se recomienda crear XmlReader instancias mediante el XmlReader.Create método para aprovechar las nuevas funcionalidades.

XmlTextReader()

Source:
XmlTextReader.cs
Source:
XmlTextReader.cs
Source:
XmlTextReader.cs

Inicializa una nueva instancia de XmlTextReader.

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

Consulte también

Se aplica a

XmlTextReader(String, XmlNodeType, XmlParserContext)

Source:
XmlTextReader.cs
Source:
XmlTextReader.cs
Source:
XmlTextReader.cs

Inicializa una nueva instancia de la clase XmlTextReader con la cadena y los objetos XmlNodeType y XmlParserContext especificados.

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)

Parámetros

xmlFragment
String

Cadena que contiene el fragmento de XML que se va a analizar.

fragType
XmlNodeType

XmlNodeType del fragmento de XML. Esto también determina lo que puede contener la cadena del fragmento. Vea la tabla que figura a continuación.

context
XmlParserContext

XmlParserContext donde se va a analizar xmlFragment. Esto incluye el XmlNameTable que se va a usar, la codificación, el ámbito del espacio de nombres, el actual xml:langy el xml:space ámbito.

Excepciones

fragType no es Element, Attribute o DocumentXmlNodeType.

xmlFragment es null.

Ejemplos

En el ejemplo siguiente se analiza un fragmento XML. Usa XmlParserContext y su XmlNamespaceManager para controlar la resolución del espacio de nombres.

#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

Comentarios

Nota

A partir de .NET Framework 2.0, se recomienda crear XmlReader instancias mediante el XmlReader.Create método para aprovechar las nuevas funcionalidades.

Este constructor analiza la cadena especificada como un fragmento de XML. Si el fragmento XML es un elemento o atributo, puede omitir las reglas de nivel raíz para documentos XML bien formados. Este constructor puede controlar las cadenas devueltas desde ReadInnerXml.

En la tabla siguiente se enumeran los valores válidos para fragType y cómo el lector analiza cada uno de los distintos tipos de nodo.

Tipo XmlNode El fragmento puede contener
Elemento Cualquier contenido de elemento válido (por ejemplo, cualquier combinación de elementos, comentarios, instrucciones de procesamiento, secciones de CDATA, texto y referencias de entidad).

También se puede suministrar una declaración XML. Esto le permite especificar la codificación para el fragmento XML, en lugar de tener que establecerla en el XmlParserContext objeto .
Atributo Valor de un atributo (la parte dentro de las comillas).
Documento Contenido de un documento XML completo. Esto aplica reglas de nivel de documento.

Consulte también

Se aplica a

XmlTextReader(String, TextReader, XmlNameTable)

Source:
XmlTextReader.cs
Source:
XmlTextReader.cs
Source:
XmlTextReader.cs

Inicializa una nueva instancia de la clase XmlTextReader con la dirección URL y los objetos TextReader y XmlNameTable especificados.

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)

Parámetros

url
String

Dirección URL que se va a usar para resolver los recursos externos. BaseURI se establece en este valor. Si el valor de url es null, el valor de BaseURI se establece en String.Empty.

input
TextReader

TextReader que contiene los datos XML que se van a leer.

nt
XmlNameTable

Objeto XmlNameTable que se va a usar.

Excepciones

El valor nt es null.

Comentarios

Nota

A partir de .NET Framework 2.0, se recomienda crear XmlReader instancias mediante el XmlReader.Create método para aprovechar las nuevas funcionalidades.

Se supone que TextReader ya está establecido en la codificación correcta. Esto lo usan los clientes que ya han leído algunas cosas de la secuencia en un escenario MIME de varias partes.

Consulte también

Se aplica a

XmlTextReader(String, Stream, XmlNameTable)

Source:
XmlTextReader.cs
Source:
XmlTextReader.cs
Source:
XmlTextReader.cs

Inicializa una nueva instancia de la clase XmlTextReader con la dirección URL, el flujo y la XmlNameTable especificados.

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)

Parámetros

url
String

Dirección URL que se va a usar para resolver los recursos externos. BaseURI se establece en este valor. Si el valor de url es null, el valor de BaseURI se establece en String.Empty.

input
Stream

Flujo que contiene los datos XML que se van a leer.

nt
XmlNameTable

Objeto XmlNameTable que se va a usar.

Excepciones

El valor de input o nt es null.

Comentarios

Nota

A partir de .NET Framework 2.0, se recomienda crear XmlReader instancias mediante el XmlReader.Create método para aprovechar las nuevas funcionalidades.

Consulte también

Se aplica a

XmlTextReader(Stream, XmlNodeType, XmlParserContext)

Source:
XmlTextReader.cs
Source:
XmlTextReader.cs
Source:
XmlTextReader.cs

Inicializa una nueva instancia de la clase XmlTextReader con el flujo especificado, XmlNodeType y 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)

Parámetros

xmlFragment
Stream

Flujo que contiene el fragmento de XML que se va a analizar.

fragType
XmlNodeType

XmlNodeType del fragmento de XML. Esto también determina lo que puede contener el fragmento. Vea la tabla que figura a continuación.

context
XmlParserContext

XmlParserContext donde se va a analizar xmlFragment. Esto incluye el XmlNameTable que se va a usar, la codificación, el ámbito del espacio de nombres, el actual xml:langy el xml:space ámbito.

Excepciones

fragType no es Element, Attribute ni Document XmlNodeType.

xmlFragment es null.

Comentarios

Nota

A partir de .NET Framework 2.0, se recomienda crear XmlReader instancias mediante el XmlReader.Create método para aprovechar las nuevas funcionalidades.

Este constructor analiza la cadena especificada como un fragmento de XML. Si el fragmento XML es un elemento o atributo, puede omitir las reglas de nivel raíz para documentos XML bien formados.

En la tabla siguiente se enumeran los valores válidos para fragType.

Tipo XmlNode El fragmento puede contener
Element Cualquier contenido de elemento válido (por ejemplo, cualquier combinación de elementos, comentarios, instrucciones de procesamiento, secciones de CDATA, texto y referencias de entidad).

También se puede suministrar una declaración XML. Esto le permite especificar la codificación para el fragmento XML, en lugar de tener que establecerla en el XmlParserContext objeto .
Attribute Valor de un atributo (la parte dentro de las comillas).
Document Contenido de un documento XML completo. Esto aplica reglas de nivel de documento.

El lector usa lo siguiente para determinar la codificación de la secuencia.

  1. Comprueba la XmlParserContext.Encoding propiedad para determinar la codificación.

  2. Si la Encoding propiedad es null, el lector comprueba si hay una marca de orden de bytes al principio de la secuencia.

  3. Si la Encoding propiedad es nully no se encuentra ninguna marca de orden de bytes, el lector asume que la secuencia se codifica en UTF-8.

Consulte también

Se aplica a

XmlTextReader(String, TextReader)

Source:
XmlTextReader.cs
Source:
XmlTextReader.cs
Source:
XmlTextReader.cs

Inicializa una nueva instancia de la clase XmlTextReader con la dirección URL y el TextReader especificados.

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)

Parámetros

url
String

Dirección URL que se va a usar para resolver los recursos externos. BaseURI se establece en este valor.

input
TextReader

TextReader que contiene los datos XML que se van a leer.

Comentarios

Nota:

A partir de .NET Framework 2.0, se recomienda crear XmlReader instancias mediante el XmlReader.Create método para aprovechar las nuevas funcionalidades.

Se supone que TextReader ya está establecido en la codificación correcta. Esto lo usan los clientes que ya han leído algunas cosas de la secuencia en un escenario MIME de varias partes.

Consulte también

Se aplica a

XmlTextReader(String, Stream)

Source:
XmlTextReader.cs
Source:
XmlTextReader.cs
Source:
XmlTextReader.cs

Inicializa una nueva instancia de la clase XmlTextReader con la dirección URL y el flujo especificados.

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)

Parámetros

url
String

Dirección URL que se va a usar para resolver los recursos externos. BaseURI se establece en este valor.

input
Stream

Flujo que contiene los datos XML que se van a leer.

Excepciones

input es null.

Comentarios

Nota

A partir de .NET Framework 2.0, se recomienda crear XmlReader instancias mediante el XmlReader.Create método para aprovechar las nuevas funcionalidades.

Consulte también

Se aplica a

XmlTextReader(String, XmlNameTable)

Source:
XmlTextReader.cs
Source:
XmlTextReader.cs
Source:
XmlTextReader.cs

Inicializa una nueva instancia de la clase XmlTextReader con el archivo y el objeto XmlNameTable especificados.

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)

Parámetros

url
String

Dirección URL del archivo que contiene los datos XML que se van a leer.

nt
XmlNameTable

Objeto XmlNameTable que se va a usar.

Excepciones

El valor nt es null.

No se puede encontrar el archivo especificado.

No se puede encontrar parte del nombre de archivo o del directorio.

url es una cadena vacía.

No se puede resolver el nombre de archivo remoto.

o bien

Se produjo un error al procesar la solicitud.

url no es un URI válido.

Comentarios

Nota

A partir de .NET Framework 2.0, se recomienda crear XmlReader instancias mediante el XmlReader.Create método para aprovechar las nuevas funcionalidades.

Consulte también

Se aplica a

XmlTextReader(Stream, XmlNameTable)

Source:
XmlTextReader.cs
Source:
XmlTextReader.cs
Source:
XmlTextReader.cs

Inicializa una nueva instancia de la clase XmlTextReader con el flujo especificado y 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)

Parámetros

input
Stream

Flujo que contiene los datos XML que se van a leer.

nt
XmlNameTable

Objeto XmlNameTable que se va a usar.

Excepciones

El valor de input o nt es null.

Comentarios

Nota

A partir de .NET Framework 2.0, se recomienda crear XmlReader instancias mediante el XmlReader.Create método para aprovechar las nuevas funcionalidades.

Descodifica XmlTextReader la secuencia mediante System.Text.Encoding.

Si especifica una tabla de nombres, este constructor usa los nombres definidos ya en esa tabla.

Consulte también

Se aplica a

XmlTextReader(XmlNameTable)

Source:
XmlTextReader.cs
Source:
XmlTextReader.cs
Source:
XmlTextReader.cs

Inicializa una nueva instancia de la clase XmlTextReader con el objeto XmlNameTable especificado.

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)

Parámetros

nt
XmlNameTable

Objeto XmlNameTable que se va a usar.

Comentarios

Nota

A partir de .NET Framework 2.0, se recomienda crear XmlReader instancias mediante el XmlReader.Create método para aprovechar las nuevas funcionalidades.

Consulte también

Se aplica a

XmlTextReader(String)

Source:
XmlTextReader.cs
Source:
XmlTextReader.cs
Source:
XmlTextReader.cs

Inicializa una nueva instancia de la clase XmlTextReader con el archivo especificado.

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

Parámetros

url
String

URL del archivo que contiene los datos XML. BaseURI se establece en este valor.

Excepciones

No se puede encontrar el archivo especificado.

No se puede encontrar parte del nombre de archivo o del directorio.

url es una cadena vacía.

No se puede resolver el nombre de archivo remoto.

o bien

Se produjo un error al procesar la solicitud.

url no es un URI válido.

Ejemplos

En el ejemplo siguiente se lee un archivo XML y se muestra cada uno de los nodos.

#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

En el ejemplo se usa el archivo , items.xmlcomo entrada.


<?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>

Comentarios

Nota

A partir de .NET Framework 2.0, se recomienda crear XmlReader instancias mediante el XmlReader.Create método para aprovechar las nuevas funcionalidades.

Si el archivo se encuentra en un recurso que requiere credenciales de acceso, use la XmlResolver propiedad para especificar las credenciales necesarias.

Nota

En la versión 1.1 de .NET Framework, el código de confianza parcial no puede establecer la XmlResolver propiedad . La solución consiste en crear un XmlUrlResolver objeto con las credenciales necesarias, pasar el URI al XmlUrlResolver.GetEntity método y, a continuación, construir mediante XmlTextReader el objeto resultante Stream . La solución alternativa se describe en el siguiente código de 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);

Consulte también

Se aplica a

XmlTextReader(TextReader)

Source:
XmlTextReader.cs
Source:
XmlTextReader.cs
Source:
XmlTextReader.cs

Inicializa una nueva instancia de la clase XmlTextReader con el objeto TextReader especificado.

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)

Parámetros

input
TextReader

TextReader que contiene los datos XML que se van a leer.

Ejemplos

En el ejemplo siguiente se carga una cadena XML en el XmlTextReader objeto mediante la StringReader clase .

#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

Comentarios

Nota

A partir de .NET Framework 2.0, se recomienda crear XmlReader instancias mediante el XmlReader.Create método para aprovechar las nuevas funcionalidades.

Se supone que TextReader ya está establecido en la codificación correcta. Esto lo usan los clientes que ya han leído algunas cosas de la secuencia en un escenario MIME de varias partes.

Consulte también

Se aplica a

XmlTextReader(Stream)

Source:
XmlTextReader.cs
Source:
XmlTextReader.cs
Source:
XmlTextReader.cs

Inicializa una nueva instancia de la clase XmlTextReader con el flujo especificado.

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)

Parámetros

input
Stream

Flujo que contiene los datos XML que se van a leer.

Excepciones

input es null.

Comentarios

Nota

A partir de .NET Framework 2.0, se recomienda crear XmlReader instancias mediante el XmlReader.Create método para aprovechar las nuevas funcionalidades.

Descodifica XmlTextReader la secuencia mediante System.Text.Encoding.

Consulte también

Se aplica a

XmlTextReader(TextReader, XmlNameTable)

Source:
XmlTextReader.cs
Source:
XmlTextReader.cs
Source:
XmlTextReader.cs

Inicializa una nueva instancia de la clase XmlTextReader con los parámetros TextReader y XmlNameTable especificados.

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)

Parámetros

input
TextReader

TextReader que contiene los datos XML que se van a leer.

nt
XmlNameTable

Objeto XmlNameTable que se va a usar.

Excepciones

El valor de nt es null.

Comentarios

Nota

A partir de .NET Framework 2.0, se recomienda crear XmlReader instancias mediante el XmlReader.Create método para aprovechar las nuevas funcionalidades.

Se supone que TextReader ya está establecido en la codificación correcta. Esto lo usan los clientes que ya han leído algunas cosas de la secuencia en un escenario MIME de varias partes.

Consulte también

Se aplica a