Partager via


XmlTextReader Constructeurs

Définition

Initialise une nouvelle instance de l'objet XmlTextReader.

Surcharges

XmlTextReader()

Initialise une nouvelle instance de l'objet XmlTextReader.

XmlTextReader(String, XmlNodeType, XmlParserContext)

Initialise une nouvelle instance de la classe XmlTextReader avec la chaîne, le XmlNodeType et le XmlParserContext spécifiés.

XmlTextReader(String, TextReader, XmlNameTable)

Initialise une nouvelle instance de la classe XmlTextReader avec l'URL, le TextReader et le XmlNameTable spécifiés.

XmlTextReader(String, Stream, XmlNameTable)

Initialise une nouvelle instance de la classe XmlTextReader avec l'URL, le flux et le XmlNameTable spécifiés.

XmlTextReader(Stream, XmlNodeType, XmlParserContext)

Initialise une nouvelle instance de la classe XmlTextReader avec le flux spécifié, XmlNodeType et XmlParserContext.

XmlTextReader(String, TextReader)

Initialise une nouvelle instance de la classe XmlTextReader avec l'URL et le TextReader spécifiés.

XmlTextReader(String, Stream)

Initialise une nouvelle instance de la classe XmlTextReader avec l'URL et le flux spécifiés.

XmlTextReader(String, XmlNameTable)

Initialise une nouvelle instance de la classe XmlTextReader avec le fichier et le XmlNameTable spécifiés.

XmlTextReader(Stream, XmlNameTable)

Initialise une nouvelle instance de la classe XmlTextReader avec le flux spécifié et XmlNameTable.

XmlTextReader(XmlNameTable)

Initialise une nouvelle instance de la classe XmlTextReader avec le XmlNameTable spécifié.

XmlTextReader(String)

Initialise une nouvelle instance de la classe XmlTextReader avec le fichier spécifié.

XmlTextReader(TextReader)

Initialise une nouvelle instance de la classe XmlTextReader avec le TextReader spécifié.

XmlTextReader(Stream)

Initialise une nouvelle instance de la classe XmlTextReader avec le flux spécifié.

XmlTextReader(TextReader, XmlNameTable)

Initialise une nouvelle instance de la classe XmlTextReader avec les TextReader et XmlNameTable spécifiés.

Remarques

Notes

À compter de .NET Framework 2.0, nous vous recommandons de créer XmlReader des instances à l’aide de la XmlReader.Create méthode pour tirer parti de nouvelles fonctionnalités.

XmlTextReader()

Initialise une nouvelle instance de l'objet XmlTextReader.

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

Voir aussi

S’applique à

XmlTextReader(String, XmlNodeType, XmlParserContext)

Initialise une nouvelle instance de la classe XmlTextReader avec la chaîne, le XmlNodeType et le XmlParserContext spécifiés.

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)

Paramètres

xmlFragment
String

Chaîne contenant le fragment XML à analyser.

fragType
XmlNodeType

XmlNodeType du fragment XML. Ceci détermine également ce que la chaîne du fragment peut contenir. Consultez le tableau ci-dessous.

context
XmlParserContext

XmlParserContext dans lequel xmlFragment doit être analysé. Ceci inclut le XmlNameTable à utiliser, l’encodage, la portée de l’espace de noms, le xml:lang actuel et la portée xml:space.

Exceptions

fragType n’est pas un Element, Attribute ni un DocumentXmlNodeType.

xmlFragment a la valeur null.

Exemples

L’exemple suivant analyse un fragment XML. Il utilise le et son XmlNamespaceManager pour gérer la XmlParserContext résolution d’espace de noms.

#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

Remarques

Notes

À compter de .NET Framework 2.0, nous vous recommandons de créer XmlReader des instances à l’aide de la XmlReader.Create méthode pour tirer parti de nouvelles fonctionnalités.

Ce constructeur analyse la chaîne donnée sous la forme d’un fragment de XML. Si le fragment XML est un élément ou un attribut, vous pouvez contourner les règles de niveau racine pour les documents XML bien formés. Ce constructeur peut gérer les chaînes retournées par ReadInnerXml.

Le tableau suivant répertorie les valeurs valides pour fragType et la façon dont le lecteur analyse chacun des différents types de nœuds.

XmlNodeType Le fragment peut contenir
Élément Tout contenu d’élément valide (par exemple, toute combinaison d’éléments, commentaires, instructions de traitement, sections CDATA, texte et références d’entité).

Une déclaration XML peut également être fournie. Cela vous permet de spécifier l’encodage pour le fragment XML, plutôt que de devoir le définir sur l’objet XmlParserContext .
Attribut Valeur d’un attribut (partie à l’intérieur des guillemets).
Document Le contenu d'un document XML entier. Cela applique les règles de niveau document.

Voir aussi

S’applique à

XmlTextReader(String, TextReader, XmlNameTable)

Initialise une nouvelle instance de la classe XmlTextReader avec l'URL, le TextReader et le XmlNameTable spécifiés.

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)

Paramètres

url
String

URL à utiliser pour résoudre les ressources externes. Cette valeur est affectée à la propriété BaseURI. Si url a la valeur null, BaseURI a la valeur String.Empty.

input
TextReader

TextReader contenant les données XML à lire.

nt
XmlNameTable

XmlNameTable à utiliser.

Exceptions

nt a la valeur null.

Remarques

Notes

À compter de .NET Framework 2.0, nous vous recommandons de créer XmlReader des instances à l’aide de la XmlReader.Create méthode pour tirer parti de nouvelles fonctionnalités.

On suppose que TextReader est déjà défini selon l'encodage approprié. Cela est utilisé par les clients qui ont déjà lu certaines choses à partir du flux dans un scénario MIME en plusieurs parties.

Voir aussi

S’applique à

XmlTextReader(String, Stream, XmlNameTable)

Initialise une nouvelle instance de la classe XmlTextReader avec l'URL, le flux et le XmlNameTable spécifiés.

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)

Paramètres

url
String

URL à utiliser pour résoudre les ressources externes. Cette valeur est affectée à la propriété BaseURI. Si url a la valeur null, BaseURI a la valeur String.Empty.

input
Stream

Flux contenant les données XML à lire.

nt
XmlNameTable

XmlNameTable à utiliser.

Exceptions

La valeur de input ou de nt est null.

Remarques

Notes

À compter de .NET Framework 2.0, nous vous recommandons de créer XmlReader des instances à l’aide de la XmlReader.Create méthode pour tirer parti de nouvelles fonctionnalités.

Voir aussi

S’applique à

XmlTextReader(Stream, XmlNodeType, XmlParserContext)

Initialise une nouvelle instance de la classe XmlTextReader avec le flux spécifié, XmlNodeType et 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)

Paramètres

xmlFragment
Stream

Flux contenant le fragment XML à analyser.

fragType
XmlNodeType

XmlNodeType du fragment XML. Ceci détermine également ce que le fragment peut contenir. Consultez le tableau ci-dessous.

context
XmlParserContext

XmlParserContext dans lequel xmlFragment doit être analysé. Ceci inclut le XmlNameTable à utiliser, l’encodage, la portée de l’espace de noms, le xml:lang actuel et la portée xml:space.

Exceptions

fragType n'est pas un XmlNodeType Element, Attribute ou Document.

xmlFragment a la valeur null.

Remarques

Notes

À compter de .NET Framework 2.0, nous vous recommandons de créer XmlReader des instances à l’aide de la XmlReader.Create méthode pour tirer parti de nouvelles fonctionnalités.

Ce constructeur analyse la chaîne donnée sous la forme d’un fragment de XML. Si le fragment XML est un élément ou un attribut, vous pouvez contourner les règles de niveau racine pour les documents XML bien formés.

Le tableau suivant répertorie les valeurs valides pour fragType.

XmlNodeType Le fragment peut contenir
Element Tout contenu d’élément valide (par exemple, toute combinaison d’éléments, commentaires, instructions de traitement, sections CDATA, texte et références d’entité).

Une déclaration XML peut également être fournie. Cela vous permet de spécifier l’encodage pour le fragment XML, plutôt que de devoir le définir sur l’objet XmlParserContext .
Attribute Valeur d’un attribut (partie à l’intérieur des guillemets).
Document Le contenu d'un document XML entier. Cela applique les règles de niveau document.

Le lecteur utilise les éléments suivants pour déterminer l’encodage du flux.

  1. Vérifie la XmlParserContext.Encoding propriété pour déterminer l’encodage.

  2. Si la Encoding propriété est null, le lecteur recherche une marque d’ordre d’octet au début du flux.

  3. Si la Encoding propriété est null, et qu’aucune marque d’ordre d’octet n’est trouvée, le lecteur suppose que le flux est encodé en UTF-8.

Voir aussi

S’applique à

XmlTextReader(String, TextReader)

Initialise une nouvelle instance de la classe XmlTextReader avec l'URL et le TextReader spécifiés.

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)

Paramètres

url
String

URL à utiliser pour résoudre les ressources externes. Cette valeur est affectée à la propriété BaseURI.

input
TextReader

TextReader contenant les données XML à lire.

Remarques

Notes

À compter de .NET Framework 2.0, nous vous recommandons de créer XmlReader des instances à l’aide de la XmlReader.Create méthode pour tirer parti de nouvelles fonctionnalités.

On suppose que TextReader est déjà défini selon l'encodage approprié. Cela est utilisé par les clients qui ont déjà lu certaines choses à partir du flux dans un scénario MIME en plusieurs parties.

Voir aussi

S’applique à

XmlTextReader(String, Stream)

Initialise une nouvelle instance de la classe XmlTextReader avec l'URL et le flux spécifiés.

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)

Paramètres

url
String

URL à utiliser pour résoudre les ressources externes. Cette valeur est affectée à la propriété BaseURI.

input
Stream

Flux contenant les données XML à lire.

Exceptions

input a la valeur null.

Remarques

Notes

À compter de .NET Framework 2.0, nous vous recommandons de créer XmlReader des instances à l’aide de la XmlReader.Create méthode pour tirer parti de nouvelles fonctionnalités.

Voir aussi

S’applique à

XmlTextReader(String, XmlNameTable)

Initialise une nouvelle instance de la classe XmlTextReader avec le fichier et le XmlNameTable spécifiés.

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)

Paramètres

url
String

URL du fichier contenant les données XML à lire.

nt
XmlNameTable

XmlNameTable à utiliser.

Exceptions

nt a la valeur null.

Le fichier spécifié est introuvable.

Une partie du nom de fichier ou de répertoire est introuvable.

url est une chaîne vide.

Le nom de fichier distant ne peut pas être résolu.

  • ou -

Une erreur s’est produite lors du traitement de la demande.

url n'est pas un URI valide.

Remarques

Notes

À compter de .NET Framework 2.0, nous vous recommandons de créer XmlReader des instances à l’aide de la XmlReader.Create méthode pour tirer parti de nouvelles fonctionnalités.

Voir aussi

S’applique à

XmlTextReader(Stream, XmlNameTable)

Initialise une nouvelle instance de la classe XmlTextReader avec le flux spécifié et 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)

Paramètres

input
Stream

Flux contenant les données XML à lire.

nt
XmlNameTable

XmlNameTable à utiliser.

Exceptions

La valeur de input ou de nt est null.

Remarques

Notes

À compter de .NET Framework 2.0, nous vous recommandons de créer XmlReader des instances à l’aide de la XmlReader.Create méthode pour tirer parti de nouvelles fonctionnalités.

Le XmlTextReader décodage du flux à l’aide System.Text.Encodingde .

Si vous spécifiez une table de noms, ce constructeur utilise les noms déjà définis dans cette table.

Voir aussi

S’applique à

XmlTextReader(XmlNameTable)

Initialise une nouvelle instance de la classe XmlTextReader avec le XmlNameTable spécifié.

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)

Paramètres

nt
XmlNameTable

XmlNameTable à utiliser.

Remarques

Notes

À compter de .NET Framework 2.0, nous vous recommandons de créer XmlReader des instances à l’aide de la XmlReader.Create méthode pour tirer parti de nouvelles fonctionnalités.

Voir aussi

S’applique à

XmlTextReader(String)

Initialise une nouvelle instance de la classe XmlTextReader avec le fichier spécifié.

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

Paramètres

url
String

URL du fichier contenant les données XML. Cette valeur est affectée à la propriété BaseURI.

Exceptions

Le fichier spécifié est introuvable.

Une partie du nom de fichier ou de répertoire est introuvable.

url est une chaîne vide.

Le nom de fichier distant ne peut pas être résolu.

  • ou -

Une erreur s’est produite lors du traitement de la demande.

url n'est pas un URI valide.

Exemples

L’exemple suivant lit un fichier XML et affiche chacun des nœuds.

#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

L’exemple utilise le fichier, items.xmlcomme entrée.


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

Remarques

Notes

À compter de .NET Framework 2.0, nous vous recommandons de créer XmlReader des instances à l’aide de la XmlReader.Create méthode pour tirer parti de nouvelles fonctionnalités.

Si le fichier se trouve sur une ressource qui nécessite des informations d’identification d’accès, utilisez la XmlResolver propriété pour spécifier les informations d’identification nécessaires.

Notes

Dans la version 1.1 du .NET Framework, le code partiellement approuvé ne peut pas définir la XmlResolver propriété. La solution de contournement consiste à créer une XmlUrlResolver avec les informations d’identification nécessaires, à passer l’URI à la XmlUrlResolver.GetEntity méthode, puis à construire l’utilisation XmlTextReader de l’objet résultant Stream . La solution de contournement est décrite dans le code C# suivant.

// 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);  

Voir aussi

S’applique à

XmlTextReader(TextReader)

Initialise une nouvelle instance de la classe XmlTextReader avec le TextReader spécifié.

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)

Paramètres

input
TextReader

TextReader contenant les données XML à lire.

Exemples

L’exemple suivant charge une chaîne XML dans l’objet à l’aide XmlTextReader de la StringReader classe.

#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

Remarques

Notes

À compter de .NET Framework 2.0, nous vous recommandons de créer XmlReader des instances à l’aide de la XmlReader.Create méthode pour tirer parti de nouvelles fonctionnalités.

On suppose que TextReader est déjà défini selon l'encodage approprié. Cela est utilisé par les clients qui ont déjà lu certaines choses à partir du flux dans un scénario MIME en plusieurs parties.

Voir aussi

S’applique à

XmlTextReader(Stream)

Initialise une nouvelle instance de la classe XmlTextReader avec le flux spécifié.

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)

Paramètres

input
Stream

Flux contenant les données XML à lire.

Exceptions

input a la valeur null.

Remarques

Notes

À compter de .NET Framework 2.0, nous vous recommandons de créer XmlReader des instances à l’aide de la XmlReader.Create méthode pour tirer parti de nouvelles fonctionnalités.

Le XmlTextReader décodage du flux à l’aide System.Text.Encodingde .

Voir aussi

S’applique à

XmlTextReader(TextReader, XmlNameTable)

Initialise une nouvelle instance de la classe XmlTextReader avec les TextReader et XmlNameTable spécifiés.

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)

Paramètres

input
TextReader

TextReader contenant les données XML à lire.

nt
XmlNameTable

XmlNameTable à utiliser.

Exceptions

nt a la valeur null.

Remarques

Notes

À compter de .NET Framework 2.0, nous vous recommandons de créer XmlReader des instances à l’aide de la XmlReader.Create méthode pour tirer parti de nouvelles fonctionnalités.

On suppose que TextReader est déjà défini selon l'encodage approprié. Cela est utilisé par les clients qui ont déjà lu certaines choses à partir du flux dans un scénario MIME en plusieurs parties.

Voir aussi

S’applique à